我想取消鼠标点击,鼠标按下或鼠标按下,即使它出现在我的.NET控件上也是如此。
我希望EventArgs
中有一个取消参数,但我在TreeView.BeforeCheck
中看不到。
我还有其他方法可以做到这一点或我应该听的其他事件吗?
答案 0 :(得分:6)
只需覆盖处理程序,不要调用基类函数。
答案 1 :(得分:0)
一个简单的解决方案就是杀死焦点,只需创建自己的类:
public class ViewOnlyTextBox : System.Windows.Forms.TextBox {
// constants for the message sending
const int WM_SETFOCUS = 0x0007;
const int WM_KILLFOCUS = 0x0008;
protected override void WndProc(ref Message m) {
if(m.Msg == WM_SETFOCUS) m.Msg = WM_KILLFOCUS;
base.WndProc (ref m);
}
}