WPF,重写DataGrid的OnMouseWheel事件?解决思路
WPF,重写DataGrid的OnMouseWheel事件?
有一个自定义的继承自DataGrid的MyDataGrid控件,重写了OnMouseWheel类处理程序:
重写了之后,当鼠标移到MyDataGrid上面滚动鼠标滚轮时,为什么没有反应呢,MyDataGrid的宽度没有变成20,请问,这是为什么呢?
------解决方案--------------------
控件获取焦点了吗?
------解决方案--------------------
设断点看看this是什么东西。
------解决方案--------------------
那你这个什么都不是啊 。你要为特定的ui控件,比如TextBox.Width赋值。最好后面加一句this.updatelayout方法。
有一个自定义的继承自DataGrid的MyDataGrid控件,重写了OnMouseWheel类处理程序:
protected override void OnMouseWheel(MouseWheelEventArgs e)
{
base.OnMouseWheel(e);
this.Width = 20;
}
重写了之后,当鼠标移到MyDataGrid上面滚动鼠标滚轮时,为什么没有反应呢,MyDataGrid的宽度没有变成20,请问,这是为什么呢?
------解决方案--------------------
控件获取焦点了吗?
------解决方案--------------------
设断点看看this是什么东西。
------解决方案--------------------
那你这个什么都不是啊 。你要为特定的ui控件,比如TextBox.Width赋值。最好后面加一句this.updatelayout方法。