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