vb.net的代码,c#代码不太会写,不过思路是一样的,就像楼上说的一样 Public Function EhOpenOnce(ByVal str As String, ByVal FrmMdi As Form) As Boolean Dim Frm As Form For Each Frm In FrmMdi.MdiChildren If Frm.Name = "BacklogShowFrm" Then Frm.Activate() Exit Function End If Next Dim a As New BacklogShowFrm a.MdiParent = Me a.Show() a.Dock = DockStyle.Fill End Function 'OpenOn
int i=this.GetHashCode();然后把i存储起来,等需要用的时候在从hashtable里面直接用就ok了简单说起来就是装箱拆箱
不要误导别人啦...Mdi主窗体有个MdiChildren属性,你枚举就可以了,比如判断其Form的Name
Public Function EhOpenOnce(ByVal str As String, ByVal FrmMdi As Form) As Boolean
Dim Frm As Form
For Each Frm In FrmMdi.MdiChildren
If Frm.Name = "BacklogShowFrm" Then
Frm.Activate()
Exit Function
End If
Next
Dim a As New BacklogShowFrm
a.MdiParent = Me
a.Show()
a.Dock = DockStyle.Fill
End Function 'OpenOn
{
MyFrmRecOrder=new FrmRecOrder();
MyFrmRecOrder.MdiParent=this;
MyFrmRecOrder.Show();
}
else
{
MyFrmRecOrder.Activate();
}