GDI+重绘笔记

有的控件不能重载 OnPaint,设置 ControlStyles.UserPaint = true即可

//如果为 true,控件将自行绘制,而不是通过操作系统来绘制。
//如果为 false,将不会引发 Paint 事件。此样式仅适用于派生自 Control 的类。
this.SetStyle(ControlStyles.UserPaint, true);

 

Listbox没有不显示滚动条的属性,可以用win32消息拦截滚动条的显示

[DllImport("user32.dll")]
public static extern int ShowScrollBar(IntPtr hWnd, int iBar, int bShow);

const int SB_HORZ = 0;
const int SB_VERT = 1;

//屏蔽滚动条
protected override void WndProc(ref System.Windows.Forms.Message m)
{
    ShowScrollBar(m.HWnd, SB_HORZ, 0);
    ShowScrollBar(m.HWnd, SB_VERT, 0);
    base.WndProc(ref m);
}

 

posted @ 2018-09-13 16:19  quanzhan  阅读(613)  评论(0编辑  收藏  举报