Telerik RadGrid:当表单 Window 最大化时在表单中引发事件

Telerik RadGrid : Raise an event in Form when the Form Window is Maximized

我在 Form Window 中有一个 RadgridView 和一个按钮。单击该按钮时,它会在 RadGridView 中显示一些隐藏的行。

我希望在表格 window 最大化时显示隐藏的行。 我正在 Form_Activated 方法中尝试这样的事情:

If Me.WindowState=2 Then
    button1.PerformClick()

在调试时,我可以看到处理点击事件的方法已执行,但在表单 Window 中没有执行任何操作,即列未显示。 我错过了什么吗?我该怎么办?

您将需要处理 WindowStateChanged 事件,请参阅 https://docs.telerik.com/devtools/wpf/controls/radwindow/features/states

在这种情况下,您需要检查 Window 对象的 WindowState。由于您没有指定哪个 class 是您处理事件的地方,因此 Me 可能指的是与您的 window 不同的东西。对于 WindowStateChanged,发件人包含 RadWindow。您将需要调试并找出发件人的哪个成员是 RadWindow。它可能是发件人本身。您需要通过发件人转介 WindowState

此外,我建议您避免触发点击以更改 UI 属性。当 window 最大化并调用它而不是单击时,您可以只拥有一个函数来处理所有必要的更改。

如评论区所述,此逻辑需要在Resize事件中处理。