public void _003CUserControl_MouseLeftButtonDown_003Eb__4() { AutoClosingMessageBox.Show("連線中"); int num = 1; SocketClient instance; while (true) { if (num <= 10) { instance = Singleton_Socket.GetInstance(_003C_003E4__this.MeetingID, _003C_003E4__this.UserID, _003C_003E4__this.UserName, syncSwitch); Thread.Sleep(1); if (instance != null && instance.GetIsConnected()) { break; } Singleton_Socket.ClearInstance(); if (num == 10) { AutoClosingMessageBox.Show("同步伺服器尚未啟動,請聯絡議事管理員開啟同步"); } Thread.Sleep(10); num++; continue; } return; } instance.syncSwitch(syncSwitch); }
private void UserControl_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { if (userButton.ID.Equals("BtnSync")) { if (PaperLess_Emeeting.Properties.Settings.Default.HasIpRangeMode == true && AllowIpRange.Equals("") == false && IpTool.CheckInNowWifi(AllowIpRange) == false) { string CourseOrMeeting_String = PaperLess_Emeeting.Properties.Settings.Default.CourseOrMeeting_String; AutoClosingMessageBox.Show(string.Format("您不在{0}室範圍內,無法使用此功能", CourseOrMeeting_String.Equals("課程")?"教":CourseOrMeeting_String)); return; } if (Home_ReturnSyncStatus_Event != null) { Tuple <bool, bool> SyncStatus = Home_ReturnSyncStatus_Event(); bool syncSwitch = false; // 沒同步,按下去要變成同步且不是主控 if (SyncStatus.Item1 == false) { int FileNotFinished = 0; DataTable dt = MSCE.GetDataTable(@"select count(ID) as FileNotFinished from NowLogin as nl inner join FileRow as fr on nl.UserID=fr.UserID and nl.MeetingID=fr.MeetingID where DownloadBytes=0 or DownloadBytes<TotalBytes"); if (dt.Rows.Count > 0) { FileNotFinished = (int)dt.Rows[0]["FileNotFinished"]; } if (FileNotFinished > 0) { AutoClosingMessageBox.Show(string.Format("請將{0}資料下載完成後,再同步", PaperLess_Emeeting.Properties.Settings.Default.CourseOrMeeting_String)); return; } syncSwitch = true; } else //有同步,不是主控,按下去要變成沒有同步 { syncSwitch = false; } btnImg.Source = ButtonTool.GetSyncButtonImage(SyncStatus.Item1, SyncStatus.Item2); //string UserID = ""; //string UserName = ""; //string MeetingID = ""; //DataTable dt = MSCE.GetDataTable("select UserID,UserName,UserPWD,MeetingID from NowLogin"); //if (dt.Rows.Count > 0) //{ // UserID = dt.Rows[0]["UserID"].ToString(); // UserName = dt.Rows[0]["UserName"].ToString(); // MeetingID = dt.Rows[0]["MeetingID"].ToString(); //} Task.Factory.StartNew(() => { AutoClosingMessageBox.Show("連線中"); int i = 1; while (i <= 10) { SocketClient socketClient = Singleton_Socket.GetInstance(MeetingID, UserID, UserName, syncSwitch); Thread.Sleep(1); if (socketClient != null && socketClient.GetIsConnected() == true) { socketClient.syncSwitch(syncSwitch); break; } else { Singleton_Socket.ClearInstance(); if (i == 10) { AutoClosingMessageBox.Show("同步伺服器尚未啟動,請聯絡議事管理員開啟同步"); } } Thread.Sleep(10); i++; } }); } } else { if (userButton.ID.Equals("BtnIndividualSign") || userButton.ID.Equals("BtnBroadcast")) { if (PaperLess_Emeeting.Properties.Settings.Default.HasIpRangeMode == true && AllowIpRange.Equals("") == false && IpTool.CheckInNowWifi(AllowIpRange) == false) { string CourseOrMeeting_String = PaperLess_Emeeting.Properties.Settings.Default.CourseOrMeeting_String; AutoClosingMessageBox.Show(string.Format("您不在{0}室範圍內,無法使用此功能", CourseOrMeeting_String.Equals("課程") ? "教" : CourseOrMeeting_String)); //AutoClosingMessageBox.Show("您不在會議室範圍內,無法使用此功能"); return; } } btnImg.Source = ButtonTool.GetButtonImage(userButton.ID, true); if (Home_PopUpButtons_Event != null) { Home_PopUpButtons_Event(userButton.ID); } } //if(userButton.ID.Equals("BtnQuit")==true) //{ // DataTable dt = MSCE.GetDataTable("select HomeUserButtonAryJSON from NowLogin"); // if (dt.Rows.Count > 0) // { // string HomeUserButtonAryJSON = dt.Rows[0]["HomeUserButtonAryJSON"].ToString(); // Task.Factory.StartNew(() => // { // Home_ChangeBtnSP_Event(JsonConvert.DeserializeObject<UserButton[]>(HomeUserButtonAryJSON), "BtnHome"); // }); // } //} //改變按鈕列表 Task.Factory.StartNew(() => { Home_ChangeCC_Event(userButton); }); }