Есть ли событие восстановления в VB.NET?
Какое событие подходит, когда я нажимаю кнопку "Восстановить вниз" в строке заголовка, а затем восстанавливает основную форму вместе с другой формой с указанным мной определенным размером. Я новичок в vb.net и до сих пор изучаю новые функции. Пожалуйста помоги!
3 ответа
Решение
Извиняюсь за решение C#, возможно, это поможет вам преобразовать его в VB.Net. Я не знаю лучшего доступного решения, но это должно сработать.
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
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
Чтобы уточнить ответ Уайли: Вам также нужно где-то объявить PreviousWindowState:
Dim PreviousWindowState As FormWindowState