Vb.net NumericUpDown控件的属性列表中缺少MouseMove事件
我正在使用Visual Basic 2010 Express。当我向窗体添加NumericUpDown控件时,事件的属性列表不会显示MouseMove事件。我知道它存在,我可以使用AddHandler为它创建一个工作处理程序,但它就是不显示。它也不会出现在intellisense列表中Vb.net NumericUpDown控件的属性列表中缺少MouseMove事件,vb.net,winforms,numericupdown,Vb.net,Winforms,Numericupdown,我正在使用Visual Basic 2010 Express。当我向窗体添加NumericUpDown控件时,事件的属性列表不会显示MouseMove事件。我知道它存在,我可以使用AddHandler为它创建一个工作处理程序,但它就是不显示。它也不会出现在intellisense列表中 有没有一种方法可以“刷新”VisualStudio使其包含在内 来自其继承自的UpDownBase控件的源代码: [EditorBrowsable(EditorBrowsableState.Never)] [Br
有没有一种方法可以“刷新”VisualStudio使其包含在内 来自其继承自的UpDownBase控件的源代码:
[EditorBrowsable(EditorBrowsableState.Never)]
[Browsable(false)]
public new event MouseEventHandler MouseMove
微软决定不公开。原因是,我猜,在该控件上使用MouseMove事件做任何事情都没有意义。它是一个由文本框和一些按钮组成的复合控件
如果公开该事件很重要,则必须从NumericUpDown控件继承并自己公开该事件:
public class MyUpDown : NumericUpDown {
[Browsable(true)]
[EditorBrowsable(EditorBrowsableState.Always)]
public new event MouseEventHandler MouseMove {
add { base.MouseMove += value; }
remove { base.MouseMove -= value; }
}
}
以及VB.Net版本:
Public Class MyUpDown
Inherits NumericUpDown
<Browsable(True)> _
<EditorBrowsable(EditorBrowsableState.Always)> _
Public Shadows Event MouseMove(sender As Object, e As MouseEventArgs)
Protected Overrides Sub OnMouseMove(e As MouseEventArgs)
MyBase.OnMouseMove(e)
RaiseEvent MouseMove(Me, e)
End Sub
End Class
公共类MyUpDown
继承NumericUpDown
_
_
公共阴影事件MouseMove(发送者作为对象,e作为MouseEventArgs)
MouseMove上的受保护覆盖子对象(e作为MouseEventArgs)
MyBase.OnMouseMove(e)
RaiseEvent鼠标移动(Me,e)
端接头
末级
来自其继承自的UpDownBase控件的源代码:
[EditorBrowsable(EditorBrowsableState.Never)]
[Browsable(false)]
public new event MouseEventHandler MouseMove
微软决定不公开。原因是,我猜,在该控件上使用MouseMove事件做任何事情都没有意义。它是一个由文本框和一些按钮组成的复合控件
如果公开该事件很重要,则必须从NumericUpDown控件继承并自己公开该事件:
public class MyUpDown : NumericUpDown {
[Browsable(true)]
[EditorBrowsable(EditorBrowsableState.Always)]
public new event MouseEventHandler MouseMove {
add { base.MouseMove += value; }
remove { base.MouseMove -= value; }
}
}
以及VB.Net版本:
Public Class MyUpDown
Inherits NumericUpDown
<Browsable(True)> _
<EditorBrowsable(EditorBrowsableState.Always)> _
Public Shadows Event MouseMove(sender As Object, e As MouseEventArgs)
Protected Overrides Sub OnMouseMove(e As MouseEventArgs)
MyBase.OnMouseMove(e)
RaiseEvent MouseMove(Me, e)
End Sub
End Class
公共类MyUpDown
继承NumericUpDown
_
_
公共阴影事件MouseMove(发送者作为对象,e作为MouseEventArgs)
MouseMove上的受保护覆盖子对象(e作为MouseEventArgs)
MyBase.OnMouseMove(e)
RaiseEvent鼠标移动(Me,e)
端接头
末级
您必须知道,即使将MouseMove
和MouseLeave
事件设置为NumericUpDown
控件,它们也不会正常工作。如果你真的想处理NumericUpDown
的文本框鼠标事件,你应该将它设置为NumericUpDown
的控件
集合的第二个元素(它将是TextBox
部分)
像这样(C#语法):
myNumericUpDown->Controls[1]->MouseLeave+=gcnewsystem::EventHandler(this,&Form1::myNumericUpDown\u MouseLeave);
myNumericUpDown->Controls[1]->MouseMove+=gcnew System::Windows::Forms::MouseEventHandler(此,&Form1::myNumericUpDown\u MouseMove);
您必须知道,即使将MouseMove
和MouseLeave
事件设置为NumericUpDown
控件,它们也不会正常工作。如果你真的想处理NumericUpDown
的文本框鼠标事件,你应该将它设置为NumericUpDown
的控件
集合的第二个元素(它将是TextBox
部分)
像这样(C#语法):
myNumericUpDown->Controls[1]->MouseLeave+=gcnewsystem::EventHandler(this,&Form1::myNumericUpDown\u MouseLeave);
myNumericUpDown->Controls[1]->MouseMove+=gcnew System::Windows::Forms::MouseEventHandler(此,&Form1::myNumericUpDown\u MouseMove);
add{}和remove{}行应该引用“base.MouseMove”,而不是“this.MouseMove”,否则会崩溃。add{}和remove{}行应该引用“base.MouseMove”,而不是“this.MouseMove”,否则会崩溃。