![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c#
程序街头
与大神一起学习代码 寻求进步
展开
-
c#中string类型和color类型相互转换
以上是定义两个变量类型,为了方便观看;原创 2023-08-22 16:42:04 · 490 阅读 · 0 评论 -
C#中 Invoke和BeginInvoke的区别详解
否则,在后台线程和主截面线程共享某些状态数据的情况下,如果不同步调用,而是各自继续执行的话,可能会造成执行序列上的问题,虽然不发生死锁,但是会出现不可预料的显示结果或者数据处理错误。而所谓的“一面响应操作,一面添加节点”永远只能是相对的,使 UI 线程的负担不至于太大而已,因为界面的正确更新始终要通过 UI 线程去做,我们要做的事情是在工作线程中包揽大部分的运算,而将对纯粹的界面更新放到 UI 线程中去做,这样也就达到了减轻 UI 线程负担的目的了。调用者线程则可以在完成封送以后去继续它的工作。原创 2023-02-17 16:35:01 · 1184 阅读 · 0 评论 -
获取当前光标所在控件
1.我们在开发程序时有时想知道当前界面光标聚焦在哪个控件,通过循环当前界面控件判断。原创 2022-11-30 11:45:12 · 1018 阅读 · 0 评论 -
C# 程序报错:创建窗口句柄时出错
发现一个类库项目中: new Form().CreateGraphics()每次调用都会加5个GDI对象,而这个函数会调用好多次,后来又发现只有本机电脑解决了,现场电脑还是有问题,发现任务管理器-用户对象接近1W 现场会出现问题。打开任务管理器,详细信息,添加列,将用户对象和GDI对象显示出来,发现 用户对象也接近1W;2、直接从代码入手,一边操作一边看GDI对象的增加,看那个函数调用GDI对象数增加明显。从添加一个设备的代码 一步步调试跟进,看调用哪个函数时 GDI对象/用户对象,增加的多。原创 2022-11-23 13:40:28 · 3647 阅读 · 2 评论 -
C#中Null和DBNull.Value用法和区别
2.row[column]的值为DBNull.Value的话,至少说明它是从数据库中取到值了,对应了数据库中的空值;但如果row[column]的值为null的话,说明没有从数据库中取到值。3.DBNull.Value是一个有着内存地址的具体类型的值,映射了数据库中的null值;而NULL则是空指向,不存在对应的内存地址。任何对象赋值为null后,内存就释放了。1.DBNull.Value,, 是适用于向数据库的表中插入空值;而 null,是指在程序中表示空引用或者对象为空,就是没有实例化。原创 2022-11-09 08:22:29 · 552 阅读 · 0 评论 -
C# 中列表List<T>排序
c#列表排序原创 2022-07-27 08:31:17 · 403 阅读 · 0 评论 -
C#中枚举类型和int类型相互转化
先定义一个枚举类型public enum PropertyType { 小学 = 0, 初中, 高中,大学 };int ->enum int d=2; PropertyType a=(PropertyType)d;int <- enum PropertyType d = PropertyType.小学; int a = Convert.ToInt32(d);Enum类...原创 2021-12-10 18:46:36 · 5367 阅读 · 0 评论 -
C#中利用split分割字符串的几种方法
第一种方法:代码如下:string s=abcdeabcdeabcde;string[] sArray=s.Split(c) ;foreach(string i in sArray)Console.WriteLine(i.ToString());输出下面的结果:abdeabdeabde第二种方法:我们看到了结果是以一个指定的字符进行的分割。使用另一种构造方法对多个字符进行分割:代码如下:string s=abcdeabcdeabcdestring[原创 2021-07-21 14:49:10 · 8620 阅读 · 1 评论 -
C#截取字符串的几种方法
1.根据单个分隔字符用split截取例如代码如下:string st="GT123_1";string[] sArray=st.split("_");即可得到sArray[0]="GT123",sArray[1]="1";2.利用多个字符来分隔字符串例如代码如下:string str = "GTAZB_JiangjBen_123";string[] sArray = str.Split(new char[2] { 'j', '_' });foreach(原创 2021-07-21 14:44:50 · 2264 阅读 · 0 评论 -
C#中List〈string〉和string[]数组之间的相互转换
1,从System.String[]到List<System.String>System.String[] str={"a","b","c"};List<System.String> listS=new List<System.String>(str);2, 从List<System.String>到System.String[]List<System.String> listS=new List<System.Strin原创 2021-07-21 14:40:46 · 290 阅读 · 0 评论 -
C# as和is的用法和区别
类型转换 任何类型都可以转换为其基类类型,用隐式转换完成; 任何类型转换为其派生类型时,必须进行显示转换。如:(类型名)对象名; 使用GetType可以取得任何对象的精确类型; 基本类型可以使用Convert类实现类型转换; 除了string以外的其他类型都有Parse方法,用于将字符串类型转换成对应的基本类型; 值类型和引用类型的转换称为装箱(boxing)或拆箱(unboxing); as/is示例 is转换规则: 检查对象类型的兼容性,并返回结果true(false)原创 2021-07-06 09:27:13 · 159 阅读 · 0 评论 -
【Devexpress】中gridControl设置某一列属性
1.gridView1.Columns[“列名”].OptionsColumn.AllowEdit = false;//设置列不可以编辑2.c# dev gridControl 实现列宽度自适应:gridView1.OptionsView.ColumnAutoWidth = false;for (int I = 0; I < gridView1.Columns.Count; I++){ this.gridView1.BestFitColumns(); ...原创 2021-07-01 11:04:14 · 612 阅读 · 0 评论 -
C# 中字符串string和字节数组byte[]的转换
string转byte[]:byte[] byteArray = System.Text.Encoding.Default.GetBytes ( str );byte[]转string:string str = System.Text.Encoding.Default.GetString ( byteArray );string转ASCII byte[]:byte[] byteArray = System.Text.Encoding.ASCII.GetBytes ( str );原创 2021-07-01 11:03:25 · 1014 阅读 · 0 评论 -
将datatable的值赋给另一个datatable的三种方法
方法一:new一个新行,给每个列去赋值。 DataTable dt1 = new DataTable();DataTable dt2 = new DataTable();DataRow NewRow = dt2.NewRow();NewRow["ID"] = dt1.Rows[i]["ID"].ToString();NewRow["No"] = dt1.Ro...原创 2021-06-05 13:02:18 · 2488 阅读 · 0 评论 -
将datatable的值赋给另一个datatable三种方法
方法一:new一个新行,给每个列去赋值。 DataTable dt1 = new DataTable();DataTable dt2 = new DataTable();DataRow NewRow = dt2.NewRow();NewRow["ID"] = dt1.Rows[i]["ID"].ToString();NewRow["No"] = dt1.Ro...原创 2021-07-01 11:02:56 · 2012 阅读 · 0 评论 -
GridControl控件标题和单元格内容居中显示
设置列标题居中显示:Designer - Views -右侧输入框中输入Appearance-HeaderPanel-TextOptions-设置HAlignment为Center设置单元格内容居中显示:Designer - Columns -选择对应的行-点击Column properties-搜索AppearanceCell-TextOptions-设置HAlignment为Center也可以一次性设置所有单元格内容的显示位置,如下...原创 2021-05-14 09:32:52 · 613 阅读 · 0 评论 -
C#判断两个字符串是否相等的五种方法
string str1="Compare";string str2 = "Compare";1.第一种判断方式if (str1==str2)//C#可以直接进行判断 2.第二种判断方式int result1 = str1.CompareTo(str2); Console.WriteLine(result1); //输出result1=03.第三种判断方式int result2=String.Compare(str1, str2);Cons...原创 2021-04-29 18:18:05 · 17984 阅读 · 0 评论