public void Connect() { object x = new object(); lock (x) { Model_ServerDetails sd = (Model_ServerDetails)lvServerLists.Items[this._selIndex].Tag; bool canCreateNewForm = true; string formTitlePattern = "Remote Desktop Client - {0}@{1}[{2}]"; string formTitle = string.Format(formTitlePattern, sd.Username, sd.ServerName, sd.Server); foreach (Form f in this.MdiChildren) { if (f.Text == formTitle) { f.Activate(); canCreateNewForm = false; break; } } if (canCreateNewForm) { RdpClientWindow clientWin = new RdpClientWindow(sd, this); clientWin.Connected += new Connected(clientWin_Connected); clientWin.Connecting += new Connecting(clientWin_Connecting); clientWin.LoginComplete += new LoginComplete(clientWin_LoginComplete); clientWin.Disconnected += new Disconnected(clientWin_Disconnected); clientWin.OnFormShown += new OnFormShown(clientWin_OnFormShown); clientWin.OnFormClosing += new OnFormClosing(clientWin_OnFormClosing); clientWin.OnFormActivated += new OnFormActivated(clientWin_OnFormActivated); clientWin.ServerSettingsChanged += new ServerSettingsChanged(clientWin_ServerSettingsChanged); clientWin.Text = formTitle; clientWin.MdiParent = this; System.Diagnostics.Debug.WriteLine(this.Handle); clientWin.ListIndex = this._selIndex; clientWin.Show(); clientWin.BringToFront(); clientWin.Connect(); } } }
public void Connect() { object x = new object(); lock (x) { Database.ServerDetails sd = (Database.ServerDetails)lvServerLists.Items[this._selIndex].Tag; bool canCreateNewForm = true; string formTitlePattern = "Remote Desktop Client - {0}@{1}[{2}]"; string formTitle = string.Format(formTitlePattern, sd.Username, sd.ServerName, sd.Server); foreach (Form f in this.MdiChildren) { if (f.Text == formTitle) { f.Activate(); canCreateNewForm = false; break; } } if (canCreateNewForm) { RdpClientWindow clientWin = new RdpClientWindow(sd, this); clientWin.Connected += new Connected(clientWin_Connected); clientWin.Connecting += new Connecting(clientWin_Connecting); clientWin.LoginComplete += new LoginComplete(clientWin_LoginComplete); clientWin.Disconnected += new Disconnected(clientWin_Disconnected); clientWin.OnFormShown += new OnFormShown(clientWin_OnFormShown); clientWin.OnFormClosing += new OnFormClosing(clientWin_OnFormClosing); clientWin.OnFormActivated += new OnFormActivated(clientWin_OnFormActivated); clientWin.ServerSettingsChanged += new ServerSettingsChanged(clientWin_ServerSettingsChanged); clientWin.Text = formTitle; clientWin.MdiParent = this; System.Diagnostics.Debug.WriteLine(this.Handle); clientWin.ListIndex = this._selIndex; clientWin.Show(); clientWin.BringToFront(); clientWin.Connect(); } } }