随笔分类 -  C#

摘要:不允许ComboBox输入this.cbb_name.DropDownStyle = ComboBoxStyle.DropDownList; DropDownStyle 属性控制显示给用户的界面。可以输入一个值,该值提供以下功能:简单的下拉列表框(始终显示列表)、下拉列表框(文本部分不可编辑,并且必须选择一个箭头才能查看下拉列表框)或默认下拉列表框(文本部分可编辑,并且用户必须按箭头键才能查看列表)。若要始终显示用户不能编辑的列表,请使用 ListBox 控件。如果将 DropDownStyle 属性设置为 DropDownList,则只能从列表中选择有效值。如果将 DropD... 阅读全文
posted @ 2011-09-08 16:44 有一 阅读(274) 评论(0) 推荐(0)
摘要:System.Windows.Forms.Timer 是跑在主线程,如果Timer的Tick事件耗时太多会导致界面卡死,它基于消息System.Timers.Timer 阅读全文
posted @ 2011-09-07 18:00 有一 阅读(455) 评论(2) 推荐(0)
摘要:http://www.cnblogs.com/cxwx/archive/2011/01/11/1932620.html补充说明,尤其一开始自己没注意到 “程序员之窗”网站提供了示例下载,所以可能我文中有些言语不太妥当,在此说明,希望不要引起不必要的误会,此文仅当一个学习的例子。--------------------------------------------------------------------前几天路过一个网站时看到一个关于SplitContainer控件美化的文章,实现的效果如图:(直接引用自那个站)说起这个站看到的这篇文章,我还真是生气。本来觉得这个效果蛮好的,也想学习下 阅读全文
posted @ 2011-09-07 17:00 有一 阅读(1867) 评论(0) 推荐(1)
摘要:http://msdn.microsoft.com/zh-cn/library/system.threading.manualresetevent(v=vs.80).aspx通知一个或多个正在等待的线程已发生事件。无法继承此类。命名空间:System.Threading程序集:mscorlib(在 mscorlib.dll 中)[ComVisibleAttribute(true)] public sealed class ManualResetEvent : EventWaitHandle 备注:注意应用于此类的HostProtectionAttribute属性 (Attribute) 具有. 阅读全文
posted @ 2011-09-06 21:44 有一 阅读(387) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/farawayplace613/article/details/4849632 public static class CrossThreadUtility { public static void InvokeControlAction<t>(t cont, Action<t> action) where t : System.Windows.Forms.Control { if (cont.InvokeRequired) { cont.... 阅读全文
posted @ 2011-09-06 13:36 有一 阅读(285) 评论(1) 推荐(0)
摘要:http://blog.csdn.net/lanmao100/article/details/3796824当用户执行一个非常耗时的操作时,如果不借助Thread编程,用户就会感觉界面反映很迟钝。在.Net 2.0中可以通过BackgroundWork非常方便地进行Thread编程,大致的步骤是:1、调用BackgroundWorker的RunWorkerAsync方法(可以传递参数),它将调用DoWork事件2、在DoWork的事件响应代码中调用耗时的操作,此例中是PingIPs函数3、在耗时操作中判断CancellationPending属性,如果为false则退出4、如果要向用户界面发送 阅读全文
posted @ 2011-09-06 11:28 有一 阅读(388) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/yylxb12345/article/details/3947361这篇文章来来源于C# Color Table,这里是我翻译的中文版本,其中已经加上了我的一些理解和注释。翻译这篇文章的原因是我在写C#程序的时候发现,C#自带的颜色种类极多(详见下表),如果没有直观的对照关系的话,很难从那么多的名字中挑选出中意的颜色。以下的颜色代码取自HTML规范,这些颜色的名称对应于KnownColor的属性。比如,你可以用以下代码来创建一个Color对象:Color c=Color.FromKnownColor(KnownColor.colorname);所有的c 阅读全文
posted @ 2011-08-31 11:00 有一 阅读(534) 评论(0) 推荐(0)
摘要:namespace xxxx{ //发布事件的类 public class TestEventSource { //定义事件参数类 public class TestEventArgs : EventArgs { public readonly char KeyToRaiseEvent; public TestEventArgs(char keyToRaiseEvent) { KeyToRaiseEvent = keyToRaiseEven... 阅读全文
posted @ 2011-08-30 17:28 有一 阅读(243) 评论(0) 推荐(0)
摘要:构造函数里设置相应的style,并将背景色设为透明this.SetStyle(ControlStyles.SupportsTransparentBackColor, true);this.SetStyle(ControlStyles.ResizeRedraw, true);this.SetStyle(ControlStyles.UserPaint, true);this.BackColor = Color.Transparent;在OnSizeChanged中添加标记,改变全局变量_path protected override void OnSizeChanged(EventA... 阅读全文
posted @ 2011-08-30 10:39 有一 阅读(482) 评论(0) 推荐(0)
摘要:http://www.cnblogs.com/hcbin/archive/2010/03/13/1685041.html圆角Panel代码using System;using System.Collections.Generic;using System.ComponentModel;using System.Diagnostics;using System.Linq;using System.Text;namespace myControlLibrary{ public partial class RoundPanel : System.Windows.Forms.Panel {... 阅读全文
posted @ 2011-08-29 17:50 有一 阅读(466) 评论(0) 推荐(0)
摘要:使用双缓冲的图形可以减少或消除重绘显示图面时产生的闪烁。使用双缓冲时,更新的图形首先被绘制到内存的缓冲区中,然后,此缓冲区的内容被迅速写入某些或所有显示的图面中。显示图形的重写相对简短,这通常可以减少或消除有时在更新图形时出现的闪烁。 使用C# GDI+绘图,实现双缓冲绘图有几种方法,在这篇文章中,将介绍其中的一种——使用BufferedGraphics实现GDI+双缓冲绘图。 下面的代码示例演示如何使用BufferedGraphics对象绘制以下图形,这些图形使用几种类型的缓冲实现。单击窗体将启动或停止一个计时器,该计时器将引起绘制更新。绘制更新使您可以观察双缓冲的效果。右击窗体将循环使用下 阅读全文
posted @ 2011-08-25 15:58 有一 阅读(2310) 评论(0) 推荐(0)
摘要:http://hi.baidu.com/jgszhl_85/blog/item/175ada08add768d762d98628.htmlGDI+的双缓冲问题终于搞定了, 真是松了一口气!一直以来的误区:.net1.1 和 .net 2.0 在处理控件双缓冲上是有区别的。.net 1.1 中,使用:this.SetStyle(ControlStyles.DoubleBuffer, true);.net 2.0中,使用:this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);怪不说老是提示参数无效,一直也不知道是这个问题,呵呵要知道,图元 阅读全文
posted @ 2011-08-25 15:30 有一 阅读(931) 评论(0) 推荐(1)
摘要:http://blog.csdn.net/fireofstar/article/details/3446393 .net2005中的范型List类的Sort方法有四种形式,分别是 1,不带有任何参数的Sort方法----Sort(); 2,带有比较器参数的Sort方法 ----Sort(IComparer<T>) 3,带有比较代理方法参数的Sort方法----Sort(Comparison<(Of <(T>)>)) 4,带有比较起参数,可以指定排序范围的Sort方法----Sort(Int32, Int32 IComparer(T)) 首先介绍第一种方法,使 阅读全文
posted @ 2011-08-23 20:42 有一 阅读(13912) 评论(0) 推荐(1)
摘要:http://blog.csdn.net/lynnlin1122/article/details/4019710字符型转换为字符串// C 货币2.5.ToString("C"); // ¥2.50// D 10进制数25.ToString("D5"); // 25000// E 科学型25000.ToString("E"); // 2.500000E+005// F 固定点25.ToString("F2"); // 25.00// G 常规2.5.ToString("G"); // 2.5// 阅读全文
posted @ 2011-08-23 16:13 有一 阅读(3111) 评论(0) 推荐(0)
摘要:在C#中大家都会遇到这种情况 double类型的数据,需要格式化(保留N未有效数字)或者是保留N为小数等情况,我们往往采取double.tostring("参数");的方法。下面就列出几个常用的方法。double temp=3.1415926;(F)Fixed point:string str1=temp.toString("f1");//保留一位小数 四舍五入 结果:3.1(F)Fixed point:string str2=temp.toString("f2");//保留两位小数,四舍五入 下面一次类推 结果:3.14(N)Num 阅读全文
posted @ 2011-08-22 16:21 有一 阅读(3929) 评论(0) 推荐(2)
摘要:转载:http://www.c-sharpcorner.com/Blogs/580/One of the issues I ran into when using GDI+ is how to rotate a string and place it on the Y Axis of a Graph. Here is how I solved it.You can use the StringFormatFlags.DirectionVertical in the DrawString command to rotate text. Unfortunately, when drawing th 阅读全文
posted @ 2011-07-29 16:48 有一 阅读(459) 评论(0) 推荐(0)
摘要:l它必须被声明为外层静态、非泛型类中的静态方法。l它必须把被扩展的类作为第一个参数的类型,前加“this”修饰。Example: static class ExtensionMethodEample { public static int SuperAdd(this int a, int param) { returna + param * 2; } }int a = 5;int result = a.SuperAdd(10); 阅读全文
posted @ 2011-01-21 17:17 有一 阅读(236) 评论(0) 推荐(0)
摘要:1.在写代码时注释文档C#等.NET编程语言能够生成xml注释文档然后可以利用sandcastle生成chm帮助文档MSDN中推荐的文档注释:http://msdn.microsoft.com/en-us/library/5ast78ax.aspx2.可以使用VS自带的csc.exe生成XML文件,使用方法如下:csc.exe/doc:Hello.xml/t:library Hello.csHow to: Use the XML Documentation Features (C# Programming Guide)3.[代码]参考内容:--------------------------- 阅读全文
posted @ 2011-01-10 09:50 有一 阅读(823) 评论(0) 推荐(0)
摘要:http://www.cnblogs.com/ibmfm/archive/2008/12/31/1366153.html abstract、virtual、override 和 new 是在类的继承关系中常用的四个修饰方法的关键字,在此略作总结。1. 常用的中文名:abstract 抽象方法,virtual 虚方法,override 覆盖基类方法,new 隐藏基类方法,override 和 new 有时都叫重写基类方法。2. 适用场合:abstract 和 virtual 用在基类(父类)中;override 和 new 用在派生类(子类)中。3. 具体概念: abstract 抽象方法,是空 阅读全文
posted @ 2010-12-13 10:58 有一 阅读(248) 评论(0) 推荐(0)