加载中…
个人资料
邵帅
邵帅
  • 博客等级:
  • 博客积分:0
  • 博客访问:271,239
  • 关注人气:52
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
博文
标签:

it

原文有备份,如有错误和需要改进的地方,请不吝指正会继续修改的

 

8个月没写博客了- -,一来是有不想继续干开发的想法,二来是赖的写,三来还是不想总结。所以为了继续坚持自己的开发和总结的信念,总结一下C# chart控件的一些基本属性,由于属性太多了,一时半会儿写不完,以后继续补充,这里总结重要的常用的属性

 

为避免耽误不喜欢这种曲线图效果的亲们的时间,先看一下小DEMO效果图:


先简单说一下,从图中

标签:

it

效果图:



总共就两个控件,大的是pictureBox1,小的是pictureBox2:

需要说一下的是,bitmap.Clone的方法如果操作不当会导致内存不足的错误。当鼠标截图的时候,截图的坐标大于边界的时候,就会内存不足的错误,所以解决办法就是拖到边界的时候,就不再扩大了,鼠标松开的时候截图的区域就是边界,试一下就知道;还有就是及时利用垃圾回收机制GC.Collect()清理垃圾。

哦对了,图片自己找一下吧,别忘了自己手动打一遍

代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows

标签:

it

关于可分页的DataGridView的打印还没又改好,现在还是处于未分页的状态,先写上来吧。

首先看效果图:





异步调用是CLR为开发者提供的一种重要的编程手段,它也是构建高性能、可伸缩应用程序的关键。在多核CPU越来越普及的今天,异步编程允许使用非常少的线程执行很多操作。我们通常使用异步完成许多计算型、IO型的复杂、耗时操作,去取得我们的应用程序运行所需要的一部分数据。在取得这些数据后,我们需要将它们绑定在UI中呈现。当数据量偏大时,我们会发现窗体变成了空白面板。此时如果用鼠标点击,窗体标题将会出现”失去响应”的字样,而实际上UI线程仍在工作着,这对用户来说是一种极度糟糕的体验。如果你希望了解其中的原因(并不复杂:)),并彻底解决该问题,那么花时间读完此文也许是个不错的选择。

  一般来说,窗体阻塞分为两种情况。一种是在UI线程上调用耗时较长的操作,例如访问数据库,这种阻塞是UI线程被占用所导致,可以通过delegate.BeginInvoke的异步编程解决;另一种是窗体加载大批量数据,例如向ListView、DataGridView等控件中添加大量的数据。本文主要探讨后一种阻塞。

基础理论

  这部分简单介绍CLR对跨线程UI访问的处理。作为基础内容,相信大部分.NET开发者对它并不陌生,读者可根据实际情况略过此处。

 

标签:

it

这篇文章发的仓促,所以没怎么写注释,以后再把注释加上,上篇文章和这篇文章不太一样,以这篇为主!!要明白清楚两个listView的所有事件的含义,其实根本不用写mouseMove,mouseUp事件,那样更费劲。代码里要注意index,尤为重要,它是拖拽到第几个项的索引。还要注意,listview不仅要判断自己内部的拖拽,还要判断外部的拖拽!!

如下图所示:



    下图的代码可以写在窗体加载事件当中,也可以写在窗体构造函数当中,随意。这里的GiveFeedback事件

标签:

泛型

1.       为什么提出泛型,先来看使用非泛型集合的两个问题:性能问题类型安全问题:

 

标签:

it

use master
go
if exists(select * from sysdatabases where name='bbsDB')
   drop database bbsDB
go
Exec xp_cmdshell 'mkdir d:\project'   --调用dos命令创建文件夹
 
create database bbsDB
 on
(
 name='bbsDB_data',
 

  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有