
C#
文章平均质量分 87
sunho89
这个作者很懒,什么都没留下…
展开
-
Invoke和BeginInvoke的使用(转载)
在Invoke或者BeginInvoke的使用中无一例外地使用了委托Delegate。 一、为什么Control类提供了Invoke和BeginInvoke机制?关于这个问题的最主要的原因已经是dotnet程序员众所周知的,我在此费点笔墨再次记录到自己的日志,以便日后提醒一下自己。1、windows程序消息机制Windows GUI程序是基于消息机制的,有个主线程维转载 2014-08-22 13:25:49 · 474 阅读 · 0 评论 -
show()、showDialog()
Form.ShowDialog方法 (窗体显示为模式窗体,阻塞) Form.Show方法 (窗体显示为非模式窗体,非阻塞) 模式窗体,单击关闭按钮,隐藏窗体,不调用Dispose,再次调用时不重新创建实例非模式窗体,单击关闭按钮,调用Dispose,真正的关闭窗体this.show(form1);当一个窗体归另一窗体所有时,它便随着所有者窗体最小原创 2015-01-22 17:30:47 · 636 阅读 · 0 评论 -
C#中Convert和parse的区别
Convert.ToInt32()与int.Parse()的区别(1)这两个方法的最大不同是它们对null值的处理方法: Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常。 没搞清楚Convert.ToInt32和int.Parse()的细细微区别时千万别乱用,否则可能会产生无法预料的结果,举例来说:假如从url中取一个转载 2014-12-29 10:07:31 · 572 阅读 · 0 评论 -
C#控件命名规范
C#控件命名规范一、Data Control类型前缀示例AccessDataSourceadsadsPubsDataListdlstdlstTitlesDetailViewdvwdvwTitles转载 2015-02-03 14:35:10 · 554 阅读 · 0 评论 -
c#winform水晶报表
水晶报表的一般概念水晶报表的两种模式:拉 PULL:设置好数据连接之后,使用水晶报表文件中所使用的获得数据的方式,由水晶报表自己解决数据获取操作。推 PUSH:使用DataSet装载数据,然后填充到水晶报表中,再按照水晶报表的格式来展示。数据库:PostgreSQL 引用头文件:using Npgsql;//下载并引用Npgsql.dllusing Crys原创 2014-12-26 15:07:29 · 3514 阅读 · 0 评论 -
C# DataSet和DataTable详解
1、创建DataSet对象: DataSet ds = new DataSet("DataSetName"); 2、查看调用SqlDataAdapter.Fill创建的结构 da.Fill(ds,"Orders"); DataTable tbl = ds.Table[0]; foreach(DataColumn col in tbl.Columns转载 2014-12-26 15:20:16 · 557 阅读 · 0 评论 -
C#高级编程(5) Array .Sort()、IComparable 、IComparer
Array 类实现了对数组中元素的冒泡排序。Sort()方法需要数组中的元素实现 IComparable 接口。简单类型,如 System.String 和 System.Int32 实现了 IComparable 接口,所以可以对包含这些类型的元素排序。 如对要对person类使用Sort(); public class Person : IComparable {原创 2014-11-18 16:15:11 · 1016 阅读 · 0 评论 -
对C#编程员很有用的常用快捷键
调试快捷键F5: 启动调试F9: 切换断点F10: 逐过程f12导航F6: 生成解决方案Ctrl+F6: 生成当前项目F7: 查看代码Shift+F7: 查看窗体设计器Ctrl+F5: 开始执行(不调试)Shift+F5: 停止调试Ctrl+Shift+F5: 重启调试Ctrl+F9: 启用/停止断点Ctrl+Shift+F9: 删除全部断点转载 2014-08-25 22:05:17 · 784 阅读 · 0 评论 -
C#利用委托跨线程更新UI数据
在使用C#的过程中,难免会用到多线程,而用多线程之后,线程如何与界面交互则是一个非常头疼的问题。其实不仅仅是界面,一般情况下,我们往往需要获得线程的一些信息来确定线程的状态。比较好的方式是用委托实现,看例子: 注:本例利用委托和跨线程访问技术,用界面上的两个label控件实时显示线程的执行次数。网上虽然有很多这方面的文章,但是过于简略,说明很少,刚刚接触这方面的程序员很难理解,转载 2014-08-22 11:20:00 · 635 阅读 · 0 评论 -
委托和线程
一:线程在.net中提供了两种启动线程的方式,一种是不带参数的启动方式,另一种是带参数的启动的方式。不带参数的启动方式 如果启动参数时无需其它额外的信息,可以使用ThreadStart来实例化Thread: 带参数的启动方法带参数,就不能用ThreadStart委托作为构造函数的参数来实例化Thread了,而要 ParameterizedThreadStart委托,和Thr转载 2014-08-22 11:19:46 · 804 阅读 · 0 评论 -
Expression<Func<T, bool>>拼接查询条件
由于项目中经常要用到类似db.students.where多条件查询,因此需要拼接查询条件。网上搜索大部分出自 Dynamically Composing Expression Predicates code如下using System;using System.Linq;using System.Linq.Expressions;using System.Collections原创 2016-03-11 17:57:51 · 25480 阅读 · 0 评论