摘要:
var pet = new { Age = 12, Name = "Miaomiao"}; 匿名类对象的属性为只读 阅读全文
摘要:
c#的泛型是运行时泛型,因此不支持: c#的泛型是运行时泛型,因此不支持: public T New<T>() where T : IProduct { return new Product(); } public T New<T>() where T : IProduct { return new 阅读全文
摘要:
自定义委托调用方法 MethodsHandler handler = new MethodsHandler(method); handler.BeginInvoke(CallBack,handler); void CallBack(IAsyncResult ar) { object result = 阅读全文
摘要:
经测试,事件本身是同步的,事件注册的方法也是同步依次执行。并不能异步执行。当注册方法自身为异步方法时,产生异步的效果。 在MSDN中提到的使用基于事件的异步模型进行多线程编程也不是想象中那么简单(自动异步执行)。 下面的例子中,同步方法是依次执行的,事件也在同步方法执行完毕后结束,异步启动时刻也是同 阅读全文
摘要:
1. FormClosing与FormClosed 当Application.Exit()放在FormClosing中时,Application.Exit会触发窗体关闭事件,导致在此触发FormClosing,从而发生循环调用。 把Application.Exit();放在formClosed事件里 阅读全文
摘要:
反编译,大概过程是: - 创建一个结构体保存这个任务需要的内容,包括委托,状态标记,TaskAwaiter - 通过Task.Run执行异步方法,之后持续对Task状态进行判断。 - 当执行完毕后通过task.GetResult()获取返回值。 剩余疑问: - MoveNext应该是持续调用的,但不 阅读全文
摘要:
/** * 当前用户是管理员的时候,直接启动应用程序 * 如果不是管理员,则使用启动对象启动程序,以确保使用管理员身份运行 */ //获得当前登录的Windows用户标示 System.Security.Principal.WindowsIdentity identity = System.Secu 阅读全文
摘要:
通过应用程序名称创建Mutex实现跨程序标识. program中的调用方法: SingleProcessFixer singleProcessFixer = new SingleProcessFixer(); if (!singleProcessFixer.CreateMutex()) //程序正在 阅读全文
摘要:
自定义控件非常灵活,我通过字段{get;set;}对控件的图片进行更换。但由于是相对路径,因此在IDE编辑过程中,拖动控件进入时会出现图片无法访问的错误。原因在于拖动控件时,所有的public字段都将自动赋初始值(bool,enum)。 为了解决这个问题,我在寻找如何防止在IDE中拖入控件时自动对某 阅读全文
摘要:
1. 自带事件 - UserControl自带事件可能不触发。如Mouse_Enter。 - 因此在开发过程中需要开发相应的事件。 2. 鼠标出入更换背景(MouseEnter与MouseLeave) - 需要对UC中所有调用控件的Enter和Leave设置相同的方法。 - 进入时将控件名称加入en 阅读全文