随笔分类 -  C#

1
实际使用C#的总结
WindowState=WindowState.Maximized不遮住任务栏(WPF)
摘要:前提:WindowStyle="None" ResizeMode="NoResize" Step1:在窗体构造函数中加SourceInitialized事件 public MainWindow() { InitializeComponent(); SourceInitialized += MainW 阅读全文
posted @ 2021-01-16 14:40 笨nora 阅读(625) 评论(0) 推荐(0)
System.ObjectDisposedException:“无法访问已释放的对象。 ObjectDisposed_ObjectName_Name”
摘要:C#垃圾回收机制导致对象已经销毁但不为null而引发的报错,使用该对象时应判断对象是否已销毁,已销毁则重新new一个。 MyForm myForm=null; if(myForm==null) myForm=new MyForm(); else if(myForm!=null && myForm.I 阅读全文
posted @ 2020-07-22 10:21 笨nora 阅读(6562) 评论(0) 推荐(0)
NPOI Word表格参照模板行按记录数量新增行
摘要:因为记录数量多,如果以原来模板行做深拷贝会很慢,所以直接去循环模板行拿结构再新增行。 参考链接:https://www.cnblogs.com/binye/articles/9351041.html CT_Row ctrow = row.GetCTRow(); table.RemoveRow(tab 阅读全文
posted @ 2020-07-03 11:01 笨nora 阅读(978) 评论(0) 推荐(1)
正则表达式
摘要://匹配非特殊字符 var reg=@"^[\u4e00-\u9fa5a-zA-Z0-9\-_\(\(\)\)]+$"; //匹配网络文件路径 var reg=@"((http|ftp|https)://)(([a-zA-Z0-9\._-]+\.[a-zA-Z]{2,6})|([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}))(:[0-9]{1,4... 阅读全文
posted @ 2018-07-18 17:29 笨nora 阅读(94) 评论(0) 推荐(0)
C#中IntPtr
摘要:System.Object System.ValueType System.IntPtr 1.C#中的IntPtr类型被称之为“平台特定的整数类型”,用于本机资源,例如窗口句柄。 2.资源的大小取决于使用的硬件和操作系统,即此类型的实例在32位硬件和操作系统中将是32位,在64位硬件和操作系统中将是 阅读全文
posted @ 2018-01-02 11:41 笨nora 阅读(14380) 评论(0) 推荐(1)
值类型和引用类型
摘要:值类型: int、float、bool、enum隐式派生于System.ValueType struct 显式派生于System.ValueType 引用类型: 数组(派生于System.Array) string(System.String的别名) Class(派生于System.object) 阅读全文
posted @ 2017-12-19 10:48 笨nora 阅读(128) 评论(0) 推荐(0)
linq 取DataTable某两列数据返回给一个Dictionary<int,int>
摘要:dic = dt.Rows.Cast().ToDictionary( x => Convert.ToInt32(x["Key"]), x => Convert.ToInt32(x["Value"])); 阅读全文
posted @ 2017-12-19 10:34 笨nora 阅读(664) 评论(0) 推荐(0)
Crop图片的方法
摘要:public static Bitmap CropImage(Bitmap source, Rectangle section) { //source 参数若来源于Image,一定要用new Bitmap(Image)的形式,而不要强制 //类型转换,否则截取的图片会模糊且区域不对 Bitmap bmp = ne... 阅读全文
posted @ 2017-12-19 10:33 笨nora 阅读(1457) 评论(0) 推荐(0)
利用sqlserver 提供的bcp.exe插入数据
摘要:class bcpHelper { public static StreamWriter SW_log { get; set; } static string bcpExePath = Environment.GetEnvironmentVariable("programfiles")+ @"\Mi 阅读全文
posted @ 2017-12-19 10:32 笨nora 阅读(618) 评论(0) 推荐(0)
Math中的取整方法
摘要:Floor:向下取整,只取整数部分; Round:四舍六入,遇到五则取偶数; Ceiling:向上取整,只要小数部分大于等于一,均往上加一。 阅读全文
posted @ 2017-12-19 10:32 笨nora 阅读(1791) 评论(0) 推荐(0)
取dictionary<key,double>中value按升序排列的第一个key值
摘要:var minValueKey=(from d in dic orderby d.Value ascending select d.Key).First() 阅读全文
posted @ 2017-12-19 10:31 笨nora 阅读(692) 评论(0) 推荐(0)
linq取DataTable某一列数据返回给一个List<int>
摘要:var list =dt.AsEnumerable().Select<DataRow, int>(x => Convert.ToInt32(x["列名"])).ToList<int>(); 阅读全文
posted @ 2017-12-19 10:28 笨nora 阅读(1990) 评论(0) 推荐(0)
加filter查询DataTable
摘要:DataTable dt_New = sourceTable.Clone(); DataRow[] drs = sourceTable.Select(filter); foreach (DataRow dr in drs) { dt_New.Rows.Add(dr.ItemArray); } ret 阅读全文
posted @ 2017-12-19 10:27 笨nora 阅读(536) 评论(0) 推荐(0)
修改文本文件某一行数据的两种方法
摘要:1)File类 2)StreamReader类 阅读全文
posted @ 2017-12-19 10:25 笨nora 阅读(2115) 评论(0) 推荐(0)
更新数据表某一行的字段值
摘要:public static void UpdateFieldValue(string tableName,int rowIndex,Dictionary<string,object> dic_column_value) { SqlConnection conn = ConnectDB(); stri 阅读全文
posted @ 2017-12-19 10:24 笨nora 阅读(548) 评论(0) 推荐(0)
往数据库的表中插入新行
摘要://方法一:用DataAdapter方法,优点:不用写insert语句且不用关心values后边的各字段的形式,如要不要加单引号之类的;缺点:插入一条记录的效率不及写单纯insert语句 SqlConnection conn = ConnectDB(server, db); string sql = "select * from " + tableName; SqlDat... 阅读全文
posted @ 2017-12-19 10:23 笨nora 阅读(3377) 评论(0) 推荐(0)
解决方案solution
摘要:解决方案solution里有多个projects,其中一个project用到另一个project里的类,需要在此project中右键add reference,再用using加命名空间的形式添加对类的引用;需要编译成DLL的project,其property的输出类型应为Class Library。 阅读全文
posted @ 2017-12-19 10:21 笨nora 阅读(248) 评论(0) 推荐(0)
Marshal类
摘要:Marshal类可以实现托管和非托管的相互转换,它的命名空间也是System.Runtime.InteropServices,已用过Marshal.PtrToStringAnsi方法。 阅读全文
posted @ 2017-12-19 10:20 笨nora 阅读(628) 评论(0) 推荐(0)
鼠标钩子WH_MOUSE_LL和WH_MOUSE的区别
摘要:前者可以截获所有模块的鼠标事件,后者只能截获监控钩子所在模块的鼠标事件。全局hook应在一个独立的dll中。 阅读全文
posted @ 2017-12-19 10:20 笨nora 阅读(1183) 评论(0) 推荐(0)
DllImport
摘要:DllImport是System.Runtime.InteropServices命名空间下与与非托管相关的一个属性类,负责导出从非托管的dll中导出函数信息,导出的函数在声明时必须有extern修饰;copy的dll文件可以放置在System32目录(在import时可以不写路径)。 阅读全文
posted @ 2017-12-19 10:15 笨nora 阅读(139) 评论(0) 推荐(0)

1