何海涛的专栏

点石成金,成就未来

排序:
默认
按更新时间
按访问量

Winforms:TypeConverter.IsValid中的改动

本文讨论了TypeConverter.IsValid在.NET 2.0中不管传入参数始终返回true的原因,以及该方法在.NET 4.0中作的修改。修改之后的TypeConverter.IsValid将判断输入的参数对于转换的目标参数是否有效,只在有效的时候返回true.

2010-06-27 09:58:00

阅读数:4497

评论数:2

Winforms: DataGridView的显示刷新问题

本文分析了DataGridView中在拖动滚动条时出现刷新不及时而不能正常显示的问题的原因,并提出了两种适用不同性能需求的解决方案。

2010-06-13 19:41:00

阅读数:15266

评论数:23

Winforms:透明的控件

本文分析了在Winforms中为什么只有Form和ToolStripDropDown有Opcity属性来设置透明度,而其他控件没有。本文接着提供了如何给其他控件设置透明度的一种方法。

2010-05-31 22:15:00

阅读数:5776

评论数:0

Winforms:Windows 7中Taskbar的新效果(4)——缩略图工具栏

                在Win7中,运行Windows Media Player,然后把鼠标移到任务栏(Taskbar)上播放器的按钮上,我们注意到在播放器的缩略图的底部,有一个小的工具栏(Toolbox),上面有三个按钮。如下图所示:点击中间的按钮可以开始播放或者暂停播放,点击最左边的...

2010-04-11 17:01:00

阅读数:4553

评论数:0

Winforms: Windows 7中Taskbar的新效果(3)——进度条

在Win7中,当我们从网上下载一个比较大的文件的时候,我们发现下载对应的窗口在Taskbar上对应的按钮有进度条来显示下载的进展情况。Win7为了方便开发这种新的UI效果,Windows提供了两个API:·         void SetProgressValue(IntPtr hwnd, UI...

2010-03-29 23:30:00

阅读数:3195

评论数:4

Winforms: Windows 7中Taskbar的新效果(2)——Overlay Icon

在Win7中运行MSN,我们发现MSN在Taskbar的按钮上,有一个小图片来显示MSN的状态:绿色表示有空,红色表示忙碌,黄色表示不在,而灰色表示脱机。                为了实现这个效果,Windows提供了一个API SetOverlayIcon。下面将详细介绍使用这个API的步...

2010-03-28 18:51:00

阅读数:2669

评论数:0

Winforms: Windows 7中Taskbar的新效果(1)——概述

Win7推出之后,很多用户发现Windows的界面漂亮了很多。在这些界面中,Taskbar是最引人注目的一个更新。在最新的Taskbar中,缩略图能显示更加丰富的信息。右键点击Taskbar上的按钮,弹出的菜单提供了很多选项以方便用户的操作。比如右键单击文件管理器Explorer的按钮,就会在弹出...

2010-03-28 17:28:00

阅读数:2629

评论数:2

Winforms: PictureBox.Load不能载入GIF图片

一、问题描述当我们用方法PictureBox.Load载入GIF图片时,图片不能正常显示。二、问题重现1.       在Visual Studio中创建一个Winforms工程;2.       在Form1上添加一个按钮;3.       为button1添加Click事件处理器;4.    ...

2010-03-20 17:47:00

阅读数:5747

评论数:2

Winforms:Form的最小宽度限制

一、问题描述我们给Form设置一个比较小的宽度,但Form的实际宽度可能会大于我们设置的值。二、问题重现1.       在Win7中,把主题设为一种Aero主题;2.       在Visual Studio中,创建一个Winforms工程;3.       在Form1中,添加一个按钮;4. ...

2010-03-13 18:38:00

阅读数:4453

评论数:2

Winforms: MonthCalendar的ForeColor和BackColor

一、问题描述在Vista和Win7中,如果启用了Visual Style,那么我们改变MonthCalendar的ForeColor和BackColor并不能真正改变MonthCalendar的字体和背景颜色。二、问题重现1.  启用Visual Style:在Vista中应用Vista主题,在W...

2010-02-02 10:26:00

阅读数:3383

评论数:4

Winforms: ContextMenuStrip中的内存泄露

一、问题描述在一个Form里添加一个ContextMenuStrip。如果在运行的时候反复打开然后关闭该Form,我们发现程序中出现内存泄露。二、问题重现1.       在Visual Studio中创建一个Winforms项目;2.       在项目中添加一个Form(Form2);3.  ...

2010-01-23 23:49:00

阅读数:1897

评论数:4

Winforms:RichTextBox显示特殊字符的问题

一、        问题描述在RichTextBox中输入某些语言的特殊字符时,有些特殊字符将不能正确显示。二、        问题重现1.       在Visual Studio中创建一个Winforms工程;2.       从工具箱里拖拽一个RichTextBox放到Form1上;3.  ...

2010-01-17 16:39:00

阅读数:3135

评论数:1

Winforms: Application.Idle不能在非UI线程里注册

一、现象描述如果我们在一个非UI线程里为事件(Event)Application.Idle注册一个处理器(Handler),我们将发现该事件处理器不会被调用到。二、问题重现1.       在Visual Studio中创建一个Winforms工程;2.       添加Application.I...

2009-12-31 12:16:00

阅读数:2929

评论数:0

Winforms: Form的大小不能超过屏幕的分辨率

一、 现象描述当Form的大小超过屏幕的分辨率时,Form不能完全显示,超出屏幕分辨率部分的Form以及上面所有控件都不能显示。二、问题重现1.       把显示器的分辨率设1280×1024,把Windows字体大小设为100%;2.       在Visual Studio中创建一个Winf...

2009-12-30 17:02:00

阅读数:8167

评论数:3

Winforms: 在Vista中基于.NET 2.0的GIF动画显示问题

一、问题描述一个基于.NET 2.0的Winform程序运行在Vista中,它用来显示GIF动画。拖拽另外一个程序的窗口把该GIF动画完全覆盖,然后再拖开,重新显示该GIF动画所在的窗口。此时,我们发现动画已经停止播放了。这个问题在XP中不会出现。二、问题重现1.       在Visual St...

2009-12-28 17:26:00

阅读数:1731

评论数:0

Winforms:在Winforms中应用Inproc-SxS

1.     Inproc-SxS简介InProc-SxS是.Net 4.0新推出的功能。在.Net 2.0中,一个进程中只能运行一个版本的.Net的运行时(Runtime)。在.Net 4.0中,我们可以在一个进程中运行多个不同版本的.Net运行时。也就是说在.Net 4.0,我们可以把进程的一...

2009-12-06 16:24:00

阅读数:1528

评论数:2

Winforms: 把Label显示为多行

问题描述:我们经常用Label在对话框上显示提示信息。当需要提示的信息很长时,我们去发现Label不想TextBox那样具有Multiline这样的属性。在一个Textbox中,如果把Multiline属性设为true,该TextBox就能够显示多行文本。遗憾的是,Label并没有这样的属性。因此...

2009-10-12 17:12:00

阅读数:6582

评论数:1

Winforms: 复杂布局改变大小时绘制错误

一、        问题描述当一个Form非常复杂,里面的控件嵌套层次很深时,我们发现在改变Form大小的时候,处于最内层的控件会绘制错误。当我们设置了相应Layout之后,通常内层的控件在外层控件的大小改变时应该也随之改变。当问题出现时,我们期待的内层控件没有变化。二、        问题重现1...

2009-07-26 23:12:00

阅读数:1769

评论数:0

Winforms:只读TextBox的文字颜色不随ForeColor的改变而改变

一、        问题描述当一个TextBox的ReadOnly属性设为true的时候,我们不管怎么改变ForeColor,该TextBox的字体颜色都不发生改变。二、        问题重现1.       新建一个Winforms工程;2.       从工具箱里拖拽一个TextBox到Fo...

2009-07-12 20:26:00

阅读数:8136

评论数:3

Winforms: 为什么Graphics.DpiX/DpiY总是返回96

 一、问题描述Windows中缺省的DPI值为96。在Vista中,我们把DPI设为150%,也就是144。可如果此时我们去获取属性System.Drawing.Graphics.DpiX或者System.Drawing.Graphics.DpiY的值,我们发现得到的仍然是96,而不是144。二、...

2009-06-14 20:09:00

阅读数:7677

评论数:1

提示
确定要删除当前文章?
取消 删除