只能在 父MDI [MAIN_ligoHRsys] 下運作! 當嵌入其它組件時,無法在其下 父MDI 下運算!
'若表單已存在 則讓他為主要顯示表單
If l_Frm IsNot Nothing Then
For i As Integer = 0 To MAIN_ligoHRsys.FindForm().MdiChildren.Length - 1
If frmText.Equals(MAIN_ligoHRsys.FindForm().MdiChildren(i).Text) Then
MAIN_ligoHRsys.FindForm().MdiChildren(i).Tag = 4
MAIN_ligoHRsys.FindForm().MdiChildren(i).Activate()
DirectCast(MAIN_ligoHRsys.FindForm().MdiChildren(i), Object).MyDataRequery(Nothing)
End If
Next
End If
法一 - B、
當嵌入在任何組件時 在其 父MDI 下運作,必使用 Me.Parent 方可執行!
'若表單已存在 則讓他為主要顯示表單
If l_Frm IsNot Nothing Then
For i As Integer = 0 To Me.Parent.FindForm().MdiChildren.Length - 1
If frmText.Equals(Me.Parent.FindForm.MdiChildren(i).Text) Then
Me.Parent.FindForm.MdiChildren(i).Activate()
Me.Parent.FindForm.MdiChildren(i).Tag = 1
DirectCast(Me.Parent.FindForm().MdiChildren(i), Object).MyDataRequery(Nothing)
End If
Next
End If
法二、
If My.Application.OpenForms.Item("FormName") IsNot Nothing Then
'do something here 已經打開
Else
'do something here 還沒打開
End If
法三、[C#]
if (Application.OpenForms.OfType<frm力高裝箱明細列印作業>().Count() == 1)
Application.OpenForms.OfType<frm力高裝箱明細列印作業>().First().Activate();
else
{
frm裝箱明細列印作業 frm = new frm裝箱明細列印作業();
frm.MdiParent = this.MdiParent;
frm.Show();
}
參考:
[MSDN]Form.ActiveMdiChild 屬性
[MSDN]My.Application.OpenForms 屬性
VB.NET判断一个窗口是否打开的代码
[C#.NET] 如何 使用 WinForm 關閉 視窗 事件
C# WinForm 只允许运行一个实例 ,如果有就激活到前段
WinFrom 判断窗体是否已存在
沒有留言:
張貼留言