Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Winforms 是否有一个“问题”;“恢复正常”;VB.NET中的事件_Winforms_Vb.net 2010 - Fatal编程技术网

Winforms 是否有一个“问题”;“恢复正常”;VB.NET中的事件

Winforms 是否有一个“问题”;“恢复正常”;VB.NET中的事件,winforms,vb.net-2010,Winforms,Vb.net 2010,当我单击标题栏中的“向下还原”按钮,然后它将主窗体与其他具有我声明的特定大小的窗体一起向下还原时,适合哪个事件。 我是vb.net新手,仍在探索新功能。请帮忙 为c#解决方案道歉,也许这会帮助您将其转换为。我不知道有什么更好的解决方案,但这应该是可行的 private FormWindowState? previousWindowState; protected override void OnSizeChanged(EventArgs e) { if (this.Bounds == t

当我单击标题栏中的“向下还原”按钮,然后它将主窗体与其他具有我声明的特定大小的窗体一起向下还原时,适合哪个事件。 我是vb.net新手,仍在探索新功能。请帮忙

为c#解决方案道歉,也许这会帮助您将其转换为。我不知道有什么更好的解决方案,但这应该是可行的

private FormWindowState? previousWindowState;
protected override void OnSizeChanged(EventArgs e)
{
    if (this.Bounds == this.RestoreBounds && previousWindowState.HasValue && previousWindowState.Value == FormWindowState.Maximized)
    {
        Console.WriteLine("Restored down");
    }
    previousWindowState = this.WindowState;
    base.OnSizeChanged(e);
}

适用于vb.net的SRIRAM答案

Private Sub MotionManagerDialog_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.SizeChanged
    If Me.Bounds.Equals(Me.RestoreBounds) And Not PreviousWindowState.Equals(Nothing) And
                        PreviousWindowState.Equals(System.Windows.Forms.FormWindowState.Maximized) Then
        ' Captures restore down action
    End If
    PreviousWindowState = Me.WindowState
End Sub

为了澄清Wylie的答案:您还需要在某处声明PreviousWindowsState:

Dim PreviousWindowState As FormWindowState

它给了我一些想法。我把代码放在else条件下。成功了。谢谢你的帮助@Sriram@user3105280如果这篇文章回答了你的问题,请点击旁边的复选标记,将其标记为接受答案。