| 带CheckBoxs的ListView在双击时如何不改变Checked状态? |
作者:Jonne Kats 发布日期:2004-10-20 18:08:26
|
如果你的ListView为Details模式,并且带有checkboxes,而你又不想在双击时改变CheckBox的状态,你可以从ListView派生,并重载WndProc方法。下面就是方法:
public class MyListView : ListView
{
private const int WM_LBUTTONDBLCLK = 0x0203;
public MyListView():base()
{
}
protected override void WndProc(ref Message m)
{
if(m.Msg == WM_LBUTTONDBLCLK)
{
Point p = PointToClient(new Point(Cursor.Position.X, Cursor.Position.Y));
ListViewItem lvi = GetItemAt(p.X, p.Y);
if(lvi != null)
lvi.Selected = true;
OnDoubleClick(new EventArgs());
}
else
base.WndProc (ref m);
}
}
|
原文地址:http://dotnet.aspx.cc/article/ce2bc2d9-7b2c-418a-f7c8-cf2f3d32c2f2/print.aspx
© 版权所有 【孟宪会之精彩世界】TM 2012