如何通过代码在属性窗口中进行自定义属性刷新?

时间:2012-04-26 16:22:53

标签: vb.net

以下是一些代码:

ReadOnly Property X() As Integer
    Get
        Return PointerX
    End Get
End Property

ReadOnly Property Y() As Integer
    Get
        Return PointerY
    End Get
End Property

Private Sub Proj_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove
    PointerX = e.X
    PointerY = e.Y
End Sub

我想让属性窗口在每个MouseMove上更新X和Y的属性,以便它们立即对用户可见。我知道这很愚蠢,但这是我的任务。

enter image description here

有人能帮助我吗?

2 个答案:

答案 0 :(得分:0)

我强烈建议在WPF中使用OnPropertyChanged事件来追踪此项目,以便在更改属性时通知所有侦听器。然后,使PropertyGrid侦听它所代表的对象上的所有此类事件,更新相应的属性。 WPF很适合这些东西...

答案 1 :(得分:0)

这不是Windows窗体项目。

您创建了一个包含默认UserControl的Windows控件库,当您“运行”时,您看到您的UserControl正在托管,这就是您看到PropertyGrid控件的原因。

您需要在解决方案中创建或添加一个新项目作为Windows窗体应用程序,并将其设置为“Starup项目”(右键单击窗体项目并选择“设置为启动项目”)。

重建解决方案后,您可以从ToolBox中获取UserControl“Proj”,您可以将其放在表单上。