private void _003CSignListCT_Loaded_003Eb__1() { try { InitUI(); InitEvent(); } catch (Exception ex) { LogTool.Debug(ex); } MouseTool.ShowArrow(); }
private void InitUI() { MouseTool.ShowLoading(); //LawCT_Title.Text = MyPL.Properties.Settings.Default.LawButtonName; txtTitle.Text = ButtonName; //Network.HttpRequest hr = new Network.HttpRequest(); if (1 == 1 || NetworkTool.CheckNetwork() > 0) { // 非同步POST方法 //GetLawData.AsyncPOST((ld) => { GetLawData_DoAction(ld); }); GetUserFolder.AsyncPOST(UserID, UserPWD, (fd) => { GetUserFolder_DoAction(fd); }); //, () => { this.Dispatcher.BeginInvoke(new Action(() => { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); })); }); } else { DataTable dt = MSCE.GetDataTable("select LawJson from LawData"); if (dt.Rows.Count > 0) { LawData ld = JsonConvert.DeserializeObject <LawData>(dt.Rows[0]["LawJson"].ToString()); GetLawData_DoAction(ld); } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); MouseTool.ShowArrow(); } } #region 步POST //LawData lawData = GetLawData.POST(); //if (lawData != null) //{ // int i=0; // foreach (LawDataLaw item in lawData.LawList) // { // i++; // bool IsLastRow= (i==lawData.LawList.Length); // LawRowSP.Children.Add(new LawRow(item,IsLastRow, LawListCT_HangTheDownloadEvent_Callback)); // } //} //else //{ // AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); //} #endregion }
private void GetLawData_DoAction(LawData ld) { //先判斷是否要invoke if (this.Dispatcher.CheckAccess() == false) { // 這裡是下載事件處理,優先權設定為ContextIdle => 列舉值為 3。 幕後作業完成後,會處理作業。 this.Dispatcher.BeginInvoke(new Action <LawData>(GetLawData_DoAction), ld); } else { if (ld != null) { Task.Factory.StartNew(() => { this.Dispatcher.BeginInvoke(new Action(() => { int i = 0; foreach (LawDataLaw item in ld.LawList) { i++; bool IsLastRow = (i == ld.LawList.Length); LawRowSP.Children.Add(new LawRow(UserID, UserName, UserPWD , IsLastRow, item , LawListCT_HangTheDownloadEvent_Callback , LawListCT_IsAllLawRowFinished_AddInitUIFinished_Callback , LawListCT_GetBookVMs_ByMeetingFileCate_Callback)); } })); }); DataTable dt = MSCE.GetDataTable("select LawJson from LawData"); if (dt.Rows.Count > 0) { MSCE.ExecuteNonQuery(@"UPDATE [LawData] SET [LawJson] = @1" , JsonConvert.SerializeObject(ld)); } else { MSCE.ExecuteNonQuery(@"INSERT INTO [LawData] ([LawJson]) VALUES (@1)" , JsonConvert.SerializeObject(ld)); } } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); } MouseTool.ShowArrow(); } }
public SignPadCT(string UserID = "", string UserName = "", string DeptID = "", string PicUrl = "", Home_GoBackTogSignPictureCT_Function callback1 = null) { MouseTool.ShowLoading(); InitializeComponent(); this.UserID = UserID; this.UserName = UserName; this.DeptID = DeptID; this.PicUrl = PicUrl; this.Home_GoBackTogSignPictureCT_Event += callback1; sb = (Storyboard)this.TryFindResource("sb"); this.Loaded += SignPadCT_Loaded; this.Unloaded += SignPadCT_Unloaded; //MouseTool.ShowArrow(); }
public ConfirmWindow() { MouseTool.ShowLoading(); InitializeComponent(); base.Loaded += new RoutedEventHandler(ConfirmWindow_Loaded); base.KeyDown += new KeyEventHandler(ConfirmWindow_KeyDown); Window window = Enumerable.FirstOrDefault(Enumerable.OfType <Home>(Application.Current.Windows)); if (window != null) { base.Owner = window; } base.WindowStartupLocation = WindowStartupLocation.CenterScreen; }
private void GetUserData_DoAction(User user, DateTime date) { // 先判斷是否要invoke if (this.Dispatcher.CheckAccess() == false) { // 這裡是下載事件處理,優先權設定為ContextIdle => 列舉值為 3。 幕後作業完成後,會處理作業。 this.Dispatcher.BeginInvoke(new Action <User, DateTime>(GetUserData_DoAction), user, date); } else { if (user != null) { //if (user.MeetingList.Length < 1) // txtNothing.Visibility = Visibility.Visible; InitUI(user.MeetingList, date); DataTable dt = MSCE.GetDataTable("select ListDate from UserData where UserID =@1 and ListDate =@2" , user.ID , DateTool.MonthFirstDate(date).ToString("yyyyMMdd")); if (dt.Rows.Count > 0) { MSCE.ExecuteNonQuery(@"UPDATE [UserData] SET [ListDate] = @1 ,[UserJson] = @2 where UserID = @3 and ListDate =@4" , DateTool.MonthFirstDate(date).ToString("yyyyMMdd") , JsonConvert.SerializeObject(user) , user.ID , DateTool.MonthFirstDate(date).ToString("yyyyMMdd")); } else { MSCE.ExecuteNonQuery(@"INSERT INTO [UserData] ([UserID],[ListDate],UserJson) VALUES (@1,@2,@3)" , user.ID , DateTool.MonthFirstDate(date).ToString("yyyyMMdd") , JsonConvert.SerializeObject(user)); } // 會議列表的上下一頁不要複寫Buton的JSON了 // HomeUserButtonAryJSON = JsonConvert.SerializeObject(user.EnableButtonList); } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); } MouseTool.ShowArrow(); } }
private void btnYes_MouseDown(object sender, MouseButtonEventArgs e) { if (StackLines.Count < 1 || txtPLS.Visibility == Visibility.Visible) { if (!PicUrl.Equals("")) { MessageBox.Show("已簽名,欲重新簽名請先按x清除"); } else { MessageBox.Show("請簽名後上傳"); } return; } string text = ""; DataTable dataTable = MSCE.GetDataTable("select AllowIpRange from NowLogin"); if (dataTable.Rows.Count > 0) { text = dataTable.Rows[0]["AllowIpRange"].ToString(); } if (!text.Equals("") && !IpTool.CheckInNowWifi(text)) { string courseOrMeeting_String = Settings.Default.CourseOrMeeting_String; AutoClosingMessageBox.Show(string.Format("您不在{0}室範圍內,無法使用此功能", courseOrMeeting_String.Equals("課程") ? "教" : courseOrMeeting_String)); return; } string path = System.IO.Path.Combine(ClickOnceTool.GetFilePath(), Settings.Default.SignInFolder); path = System.IO.Path.Combine(path, MeetingID, UserID); Directory.CreateDirectory(path); string str = Guid.NewGuid().ToString(); string path2 = str + ".png"; string text2 = System.IO.Path.Combine(path, path2); Application current = Application.Current; CanvasTool.SaveCanvas(current.Windows[0], SignPad, 96, text2); MouseTool.ShowLoading(); if (UserID.Equals("guest")) { UserID_Origin = UserID; UserID = ""; } else if (UserID.Equals("dept")) { UserID_Origin = UserID; UserID = ""; } GetSigninDataUpload.AsyncPOST(MeetingID, UserID, DeptID, text2, new Action <SigninDataUpload>(_003CbtnYes_MouseDown_003Eb__1f)); }
//public string ResponseText { get; set; } public ConfirmWindow() { MouseTool.ShowLoading(); InitializeComponent(); this.Loaded += ConfirmWindow_Loaded; this.KeyDown += ConfirmWindow_KeyDown; Window Home_Window = App.Current.Windows.OfType <Home>().FirstOrDefault(); if (Home_Window != null) { this.Owner = Home_Window; } this.WindowStartupLocation = WindowStartupLocation.CenterScreen; }
//傳入request 和一個處理response的方法 //方法的格式為 function(HttpWebResponse response) //方法會傳入一個參數 function(HttpWebResponse response) private void DoWithResponse(HttpWebRequest request, Action <HttpWebResponse> responseAction) { //定義一個無名方法 function() 無參數 //作用是發起BeginGetResponse(callback,使用者定義物件) //這裡的callback也是lambda匿名方法,傳入使用者定義物件, //(主要處理回傳的使用用者定義物件)代表已經取得response後應該要做的事情 //取得response的資料後,利用callback去做事件處理 //以上是包裝成非同步的一系列方法 Action wrapperAction = () => { //完整版 request.BeginGetResponse(new AsyncCallback((iar) => { var response = (HttpWebResponse)((HttpWebRequest)iar.AsyncState).EndGetResponse(iar); responseAction(response); }), request); //簡化版 //request.BeginGetResponse(iar => //{ // var response = (HttpWebResponse)((HttpWebRequest)iar.AsyncState).EndGetResponse(iar); // responseAction(response); //}, request); }; //開始把包裝後的方法做非同步操作 //因為已經排入invoke當中 //做完後記得結束invoke wrapperAction.BeginInvoke(new AsyncCallback((iar) => { var action = (Action)iar.AsyncState; try { action.EndInvoke(iar); } catch (Exception ex) { //AutoClosingMessageBox.Show(ex.Message); AutoClosingMessageBox.Show("登入失敗,請重新登入"); LogTool.Debug(ex); this.Dispatcher.Invoke(new Action(() => { canLogin = true; MouseTool.ShowArrow(); })); } }), wrapperAction); }
public MVWindow(Dictionary <string, BookVM> cbBooksData , Home_OpenBookFromReader_Function callback, string FilePath, string FileID, string pageJson = "") { MouseTool.ShowLoading(); InitializeComponent(); this.cbBooksData = cbBooksData; this.Home_OpenBookFromReader_Event = callback; this.FilePath = FilePath; this.FileID = FileID; this.pageJson = pageJson; this.Loaded += MVWindow_Loaded; this.Unloaded += MVWindow_Unloaded; //this.Closing+=MVWindow_Closing; //this.Closed+=MVWindow_Closed; //MouseTool.ShowArrow(); }
public void _003CChangeMeetingRoomWP_003Eb__b() { IEnumerable <MeetingRoom> enumerable = Enumerable.OfType <MeetingRoom>(_003C_003E4__this.MeetingRoomWP.Children); foreach (MeetingRoom item in enumerable) { if (item.userMeeting.SeriesMeetingID.Equals(SeriesID)) { item.Visibility = Visibility.Visible; } else { item.Visibility = Visibility.Collapsed; } } MouseTool.ShowArrow(); }
public AddFolder(string UserID, string UserPWD, List <string> list, Window win) { MouseTool.ShowLoading(); InitializeComponent(); this.Loaded += ConfirmWindow_Loaded; this.KeyDown += ConfirmWindow_KeyDown; //this.callback = callback; this.UserID = UserID; this.UserPWD = UserPWD; this.list = list; Window Home_Window = App.Current.Windows.OfType <Home>().FirstOrDefault(); if (Home_Window != null) { this.Owner = win; } this.WindowStartupLocation = WindowStartupLocation.CenterScreen; }
private void GetSignOutUpload_DoAction(SignOut so) { if (!base.Dispatcher.CheckAccess()) { base.Dispatcher.BeginInvoke(new Action <SignOut>(GetSignOutUpload_DoAction), so); return; } if (so != null && so.Reception.Status.ToLower().Trim().Equals("true")) { AutoClosingMessageBox.Show("簽退成功"); } else { UserID = UserID_Origin; AutoClosingMessageBox.Show("簽退失敗"); } MouseTool.ShowArrow(); }
private void InitSelectDB() { DataTable dataTable = MSCE.GetDataTable("select MeetingID,UserID from NowLogin"); if (dataTable.Rows.Count > 0) { MeetingID = dataTable.Rows[0]["MeetingID"].ToString().Trim(); UserID = dataTable.Rows[0]["UserID"].ToString().Trim(); } dataTable = MSCE.GetDataTable("select MeetingJson from MeetingData where MeetingID=@1 and UserID =@2", MeetingID, UserID); if (dataTable.Rows.Count > 0) { _003C_003Ec__DisplayClass3 _003C_003Ec__DisplayClass = new _003C_003Ec__DisplayClass3(); _003C_003Ec__DisplayClass._003C_003E4__this = this; md = JsonConvert.DeserializeObject <MeetingData>(dataTable.Rows[0]["MeetingJson"].ToString()); _003C_003Ec__DisplayClass.FileList = new List <MeetingDataDownloadFileFile>(); try { MeetingDataMeetingsFileFile[] fileList = md.MeetingsFile.FileList; foreach (MeetingDataMeetingsFileFile meetingDataMeetingsFileFile in fileList) { MeetingDataDownloadFileFile meetingDataDownloadFileFile = new MeetingDataDownloadFileFile(); meetingDataDownloadFileFile.AgendaID = "record"; meetingDataDownloadFileFile.FileName = meetingDataMeetingsFileFile.FileName; meetingDataDownloadFileFile.ID = meetingDataMeetingsFileFile.ID; meetingDataDownloadFileFile.Url = meetingDataMeetingsFileFile.Url; meetingDataDownloadFileFile.version = meetingDataMeetingsFileFile.version; _003C_003Ec__DisplayClass.FileList.Add(meetingDataDownloadFileFile); HasRecordFile = true; } } catch (Exception) { } _003C_003Ec__DisplayClass.FileList.AddRange(Enumerable.ToList(md.DownloadFile.DownloadFileList)); All_FileCount = _003C_003Ec__DisplayClass.FileList.Count; base.Dispatcher.BeginInvoke(new Action(_003C_003Ec__DisplayClass._003CInitSelectDB_003Eb__2)); } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); MouseTool.ShowArrow(); } }
private void ChangeMeetingRoomWP(string SeriesID) { NowSeriesID = SeriesID; // 其他系列會議按鈕不要hightlight IEnumerable <SeriesMenu> SeriesMenuList = SeriesMenuSP.Children.OfType <SeriesMenu>(); foreach (SeriesMenu item in SeriesMenuList) { if (item.seriesDataSeriesMeetingSeries.ID.Equals(SeriesID) == false) { item.btnImg.Source = new BitmapImage(new Uri("images/icon_arrow.png", UriKind.Relative)); item.Background = Brushes.Transparent; item.txtSeriesName.Foreground = Brushes.Black; } } //下面這一段當會議很多的時候會很費時,要想辦法解決。 //顯示符合的系列會議 Task.Factory.StartNew(() => { //如果沒有用DispatcherPriority,數量一多會卡住 //this.Dispatcher.BeginInvoke(new Action(() => this.Dispatcher.BeginInvoke(DispatcherPriority.SystemIdle, new Action(() => { //MeetingRoomWP.Visibility = Visibility.Collapsed; IEnumerable <MeetingRoom> meetingRoomList = MeetingRoomWP.Children.OfType <MeetingRoom>(); foreach (MeetingRoom item in meetingRoomList) { if (item.userMeeting.SeriesMeetingID.Equals(SeriesID) == true) { item.Visibility = Visibility.Visible; } else { item.Visibility = Visibility.Collapsed; } } //MeetingRoomWP.Visibility = Visibility.Visible; MouseTool.ShowArrow(); })); }); }
private void InitUI() { MouseTool.ShowLoading(); switch (meetingUserType) { case MeetingUserType.議事管理人員: CateBtnS.Visibility = Visibility.Visible; SearchInput.Visibility = Visibility.Visible; btnAddUser.Visibility = Visibility.Visible; break; case MeetingUserType.與會人員: break; case MeetingUserType.代理人: break; case MeetingUserType.其它: break; } //this.btnIndex.Background = ColorTool.HexColorToBrush("#019fde"); //this.txtIndex.Foreground = Brushes.White; // 非同步POST方法 GetSigninData.AsyncPOST(MeetingID, (sid) => { GetSigninData_DoAction(sid); }); //, (sid) => { this.Dispatcher.BeginInvoke(new Action<SigninData>(GetSigninData_DoAction), sid); }); #region 步POST //SigninData sid=GetSigninData.POST(MeetingID); //if (sid != null) //{ // foreach (SigninDataUser item in sid.UserList) // { // SignRowSP.Children.Add(new SignRow(item)); // } //} //else //{ // AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); //} #endregion }
private void InitEvent() { // 下載事件不能這麼快掛上去,要等全部FileRow產生完成,在掛上去 // 不然如果在下載中,會阻塞到UI的產生 FileDownloader fileDownloader = Singleton_FileDownloader.GetInstance(userMeeting.ID); Start_callback = new MeetingRoom_DownloadFileStart_Function(MeetingRoom_DownloadFileStart_Callback); Progress_callback = new MeetingRoom_DownloadProgressChanged_Function(MeetingRoom_DownloadProgressChanged_Callback); ErrorFinish_callback = new MeetingRoom_DownloadFileToErrorCompleted_Function(MeetingRoom_DownloadFileToErrorCompleted_Callback); fileDownloader.MeetingRoom_DownloadFileStart_Event += Start_callback; fileDownloader.MeetingRoom_DownloadProgressChanged_Event += Progress_callback; fileDownloader.MeetingRoom_DownloadFileToErrorCompleted_Event += ErrorFinish_callback; this.MouseLeftButtonDown += MeetingRoom_MouseLeftButtonDown; btnSeries.MouseEnter += (sender, e) => { MouseTool.ShowHand(); }; btnSeries.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; btnSeries.MouseLeftButtonDown += btnSeries_MouseLeftButtonDown; btnDelete.MouseEnter += (sender, e) => { MouseTool.ShowHand(); }; btnDelete.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; btnDelete.MouseLeftButtonDown += btnDelete_MouseLeftButtonDown; btnRefresh.MouseEnter += (sender, e) => { MouseTool.ShowHand(); }; btnRefresh.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; btnRefresh.MouseLeftButtonDown += btnDownload_btnPausing_MouseLeftButtonDown; btnDownload.MouseEnter += (sender, e) => { MouseTool.ShowHand(); }; btnDownload.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; btnDownload.MouseLeftButtonDown += btnDownload_btnPausing_MouseLeftButtonDown; // 要變成暫停下載 btnPause.MouseEnter += (sender, e) => { MouseTool.ShowHand(); }; btnPause.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; btnPause.MouseLeftButtonDown += btnPause_MouseLeftButtonDown; // 要變成繼續下載 btnPausing.MouseEnter += (sender, e) => { MouseTool.ShowHand(); }; btnPausing.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; btnPausing.MouseLeftButtonDown += btnDownload_btnPausing_MouseLeftButtonDown; }
private void LawListCT_Loaded(object sender, RoutedEventArgs e) { InitSelectDB(); // 只要是 CT 主要畫面,優先權設定為Send,因為設定Normal,按鈕的出現會感覺卡卡的。 //this.Dispatcher.BeginInvoke(DispatcherPriority.Send,new Action(() => this.Dispatcher.BeginInvoke(new Action(() => { try { InitUI(); InitEvent(); } catch (Exception ex) { LogTool.Debug(ex); } MouseTool.ShowArrow(); })); }
public OKFolder(string FolderName, Window win) { MouseTool.ShowLoading(); InitializeComponent(); this.Loaded += ConfirmWindow_Loaded; this.KeyDown += ConfirmWindow_KeyDown; //this.callback = callback; this.win = win; this.FolderName = FolderName; //this.tbPinCode.Text = FolderName; Window Home_Window = App.Current.Windows.OfType <Home>().FirstOrDefault(); if (Home_Window != null) { this.Owner = win; } this.WindowStartupLocation = WindowStartupLocation.CenterScreen; //tbPinCode.SelectAll(); }
public void robotSimulServe(object arg) { serveType = (int)arg; IntPtr roboWin = FindWindow(null, "Robo-Pong 3050XL"); if (roboWin == IntPtr.Zero) { Invoke("serve", 0); return; } Rectangle rect = MouseTool.GetWindowRect(roboWin); if (rect.Width == 0) { Invoke("serve", 0); return; } serveCount = 0; foreground = GetForegroundWindow(); Point p = new Point(); p.X = (int)(rect.Width * 0.1f); p.Y = (int)(rect.Height * 0.76f); if (foreground != roboWin) { MouseTool.SetForegroundWindow(roboWin); } MouseTool.ClickOnPoint(roboWin, p, true); // time from newgy app until serve: about 10.15 // time from serve until bounce on user side: about 0.4649997 //Invoke("serve", 10.15f); //Invoke("serveMultiple", 10.15f); StartCoroutine(InvokeRealtimeCoroutine(serveMultiple, firstDelay)); EventManager.TriggerEvent("ConutdownUntilServe", firstDelay); if (foreground != roboWin) { //Invoke("robotSimulServePostWork", 0.5f); StartCoroutine(InvokeRealtimeCoroutine(robotSimulServePostWork, 0.5f)); } }
private void GetUserFolder_DoAction(XML2.FolderData fd) { //先判斷是否要invoke if (this.Dispatcher.CheckAccess() == false) { // 這裡是下載事件處理,優先權設定為ContextIdle => 列舉值為 3。 幕後作業完成後,會處理作業。 this.Dispatcher.BeginInvoke(new Action <XML2.FolderData>(GetUserFolder_DoAction), fd); } else { if (fd != null) { this.VM = fd; txtTitle.Text = fd.Folder.Name; txtCount.Text = $"收藏共 {fd.Folder.FileList.Count}個檔案"; int i = 0; if (fd.Folder.FileList.File != null && fd.Folder.FileList.File.Length > 0) { foreach (XML2.FolderDataFolderFileListFile item in fd.Folder.FileList.File) { i++; WP.Children.Add(new FileRoom(UserID, UserPWD, item, DelCallback, FolderID)); } } //foreach (XML2.FolderDataFolderList item in fd.Folder.FileList) //{ // i++; // WP.Children.Add(new FileRoom(UserID, UserPWD, item)); //} SaveData(fd); } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); } MouseTool.ShowArrow(); } }
private void InitEvent() { this.MouseEnter += (sender, e) => { MouseTool.ShowHand(); if (this.btnImg.Source.ToString().Contains("images/icon_arrow_active.png") == false) { this.Background = ColorTool.HexColorToBrush("#f1f5f6"); } //lblMousehover.Visibility = Visibility.Visible; }; this.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); if (this.btnImg.Source.ToString().Contains("images/icon_arrow_active.png") == false) { this.Background = Brushes.Transparent; } //lblMousehover.Visibility = Visibility.Collapsed; }; this.MouseLeftButtonDown += SeriesMenu_MouseLeftButtonDown; }
private void InitEvent() { LawDownloader lawDownloader = Singleton_LawDownloader.GetInstance(); Start_callback += new LawListCT_DownloadFileStart_Function(LawListCT_DownloadFileStart_Callback); Progress_callback += new LawListCT_DownloadProgressChanged_Function(LawListCT_DownloadProgressChanged_Callback); Finish_callback += new LawListCT_DownloadFileCompleted_Function(LawListCT_DownloadFileCompleted_Callback); UnZip_callback += new LawListCT_UnZip_Function(LawListCT_UnZip_Callback); UnZipError_callback += new LawListCT_UnZipError_Function(LawListCT_UnZipError_Callback); GetBookVMs_ByMeetingFileCate_callback = new LawListCT_GetBookVMs_ByMeetingFileCate_Function(LawListCT_GetBookVMs_ByMeetingFileCate_Callback); lawDownloader.LawListCT_DownloadFileStart_Event += Start_callback; lawDownloader.LawListCT_DownloadProgressChanged_Event += Progress_callback; lawDownloader.LawListCT_DownloadFileCompleted_Event += Finish_callback; lawDownloader.LawListCT_UnZip_Event += UnZip_callback; lawDownloader.LawListCT_UnZipError_Event += UnZipError_callback; txtKeyword.MouseEnter += (sender, e) => { MouseTool.ShowIBeam(); txtKeyword.Focus(); }; txtKeyword.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; //Keyboard.ClearFocus(); txtKeyword.KeyUp += txtKeyword_KeyUp; txtKeyword.Focus(); }
private void GetUserFolder_DoAction(FolderData fd) { //先判斷是否要invoke if (this.Dispatcher.CheckAccess() == false) { // 這裡是下載事件處理,優先權設定為ContextIdle => 列舉值為 3。 幕後作業完成後,會處理作業。 this.Dispatcher.BeginInvoke(new Action <FolderData>(GetUserFolder_DoAction), fd); } else { if (fd != null) { txtCount.Text = $"共有 {fd.FolderList.Count}個資料夾"; int i = 0; if (fd.FolderList.Folder != null) { foreach (FolderDataFolderListFolder item in fd.FolderList.Folder) { i++; WP.Children.Add(new FolderRoom(UserID, UserPWD, item, dictEvent, DelCallback, RenameCallback, () => { return(WP.Children.OfType <FolderRoom>().Select(item2 => item2.VM.Name).ToList()); })); //WP2.Children.Add(new FolderRow(UserID, UserPWD, item, dictEvent)); //LawRowSP.Children.Add(new LawRow(UserID, UserName, UserPWD // , IsLastRow, item // , LawListCT_HangTheDownloadEvent_Callback // , LawListCT_IsAllLawRowFinished_AddInitUIFinished_Callback // , LawListCT_GetBookVMs_ByMeetingFileCate_Callback)); } } SaveData(fd); } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); } MouseTool.ShowArrow(); } }
private void InitUI() { MouseTool.ShowLoading(); // 非同步POST方法 GetSigninData.AsyncPOST(MeetingID, (sid) => { GetSigninData_DoAction(sid); }); //, (sid) => { this.Dispatcher.BeginInvoke(new Action<SigninData>(GetSigninData_DoAction), sid); }); #region 步POST //SigninData sid=GetSigninData.POST(MeetingID); //if (sid != null) //{ // foreach (SigninDataUser item in sid.UserList) // { // SignRowSP.Children.Add(new SignRow(item)); // } //} //else //{ // AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); //} #endregion }
private void GetMeetingData_DoAction(MeetingData md, Image btnImage) { Action action = null; _003C_003Ec__DisplayClass25 _003C_003Ec__DisplayClass = new _003C_003Ec__DisplayClass25(); _003C_003Ec__DisplayClass.md = md; _003C_003Ec__DisplayClass._003C_003E4__this = this; if (!base.Dispatcher.CheckAccess()) { base.Dispatcher.BeginInvoke(new Action <MeetingData, Image>(GetMeetingData_DoAction), _003C_003Ec__DisplayClass.md, btnImage); return; } if (_003C_003Ec__DisplayClass.md != null) { TaskFactory factory = Task.Factory; if (action == null) { action = new Action(_003C_003Ec__DisplayClass._003CGetMeetingData_DoAction_003Eb__23); } factory.StartNew(action); btnImage.Visibility = Visibility.Collapsed; if (btnImage.Name.Equals(btnDownload.Name)) { txtPercent.Text = "0 %"; pb.Value = pb.Minimum; } txtPercent.Foreground = Brushes.Black; pb.Foreground = Brushes.Orange; pb.Background = Brushes.Black; txtPercent.Visibility = Visibility.Visible; pb.Visibility = Visibility.Visible; btnPause.Visibility = Visibility.Visible; } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); } MouseTool.ShowArrow(); }
public AlterFolder(string UserID, string UserPWD, string FolderID, string FolderName, List <string> list) { MouseTool.ShowLoading(); InitializeComponent(); this.Loaded += ConfirmWindow_Loaded; this.KeyDown += ConfirmWindow_KeyDown; //this.callback = callback; this.UserID = UserID; this.UserPWD = UserPWD; this.list = list; this.FolderID = FolderID; this.FolderName = FolderName; this.tbPinCode.Text = FolderName; Window Home_Window = App.Current.Windows.OfType <Home>().FirstOrDefault(); if (Home_Window != null) { this.Owner = Home_Window; } this.WindowStartupLocation = WindowStartupLocation.CenterScreen; tbPinCode.SelectAll(); }
private void InitEvent() { btnNO.MouseEnter += (sender, e) => { MouseTool.ShowHand(); }; btnNO.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; btnNO.MouseLeftButtonDown += (sender, e) => { this.DialogResult = false; this.Close(); }; btnYes.MouseEnter += (sender, e) => { MouseTool.ShowHand(); }; btnYes.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; btnYes.MouseLeftButtonDown += (sender, e) => { if (ReConfirm) { MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show($"確定刪除「{FolderName}」資料夾及所有檔案資料?", "刪除 資料夾", System.Windows.MessageBoxButton.YesNo); if (messageBoxResult == MessageBoxResult.Yes) { CallWS(); } } else { CallWS(); } }; //tbPinCode.MouseEnter += (sender, e) => { MouseTool.ShowIBeam(); }; //tbPinCode.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; //tbPinCode.PreviewKeyDown += tbPinCode_PreviewKeyDown; //tbPinCode.Focus(); //btnPinCodeClear.MouseEnter += (sender, e) => { MouseTool.ShowHand(); }; //btnPinCodeClear.MouseLeave += (sender, e) => { MouseTool.ShowArrow(); }; //btnPinCodeClear.Click += (sender, e) => //{ // tbPinCode.Text = ""; // btnPinCodeClear.Visibility = Visibility.Collapsed; //}; }
private void GetSigninData_DoAction(SigninData sid) { //先判斷是否要invoke if (this.Dispatcher.CheckAccess() == false) { // 這裡是下載事件處理,優先權設定為ContextIdle => 列舉值為 3。 幕後作業完成後,會處理作業。 this.Dispatcher.BeginInvoke(new Action <SigninData>(GetSigninData_DoAction), sid); } else { if (sid != null) { Task.Factory.StartNew(() => { this.Dispatcher.BeginInvoke(new Action(() => { //int i = 0; foreach (SigninDataUser item in sid.UserList) { //i++; bool EnableTxtPLSSigned = false; if (DateTime.Now >= BeginTime.AddHours(-1) && DateTime.Now < EndTime.AddHours(1)) { EnableTxtPLSSigned = true; } SignRowSP.Children.Add(new SignRow_Mix(item, meetingUserType, EnableTxtPLSSigned)); } })); }); } else { AutoClosingMessageBox.Show("無法取得資料,請稍後再試"); } MouseTool.ShowArrow(); } }
private void SeriesMeetingCT_Loaded(object sender, RoutedEventArgs e) { Task.Factory.StartNew(() => { InitSelectDB(); // 只要是 Row 列表內容畫面,優先權設定為Background => 列舉值為 4。 所有其他非閒置作業都完成之後,就會處理作業。 // 另外這裡比較特別 因為優先權要比AgendaRow高,所以我設定為Input => 列舉值為 5。 做為輸入相同的優先權處理作業。 //this.Dispatcher.BeginInvoke(DispatcherPriority.Send, new Action(() => this.Dispatcher.BeginInvoke(new Action(() => { try { InitUI(); InitEvent(); } catch (Exception ex) { LogTool.Debug(ex); } MouseTool.ShowArrow(); })); }); }
private void BeginMoveMapWithMouse() { movingMapWithMouseNow = true; previousMouseTool = currentMouseTool; currentMouseTool = MouseTool.MoveMap; canvasPanel.Cursor = GetCursor(currentMouseTool); preventScrollEvents = true; mouseDownScrollbarValues = new Point(scrX.Value, scrY.Value); }
public static Cursor GetCursor(MouseTool mouseTool) { // Cursors should be saved with 1 bit per pixel. // First make png image in Photoshop, then open it in GIF Movie Gear and select Frame > Edit Pixels. // This reduces the bpp number. Save as .cur file. var resources = new ComponentResourceManager(typeof(Canvas)); switch (mouseTool) { case MouseTool.ZoomIn: return new Cursor(new MemoryStream((byte[])resources.GetObject("ZoomIn"))); case MouseTool.ZoomOut: return new Cursor(new MemoryStream((byte[])resources.GetObject("ZoomOut"))); case MouseTool.Cut: return new Cursor(new MemoryStream((byte[])resources.GetObject("Cut"))); case MouseTool.MoveMap: return new Cursor(new MemoryStream((byte[])resources.GetObject("MoveMap"))); case MouseTool.AdjustRoute: return new Cursor(new MemoryStream((byte[])resources.GetObject("AdjustRoute"))); case MouseTool.Lap: return new Cursor(new MemoryStream((byte[])resources.GetObject("Lap"))); case MouseTool.Pointer: return Cursors.Default; default: return Cursors.Default; } }
private void EndMoveMapWithMouse() { currentMouseTool = previousMouseTool; canvasPanel.Cursor = GetCursor(currentMouseTool); movingMapWithMouseNow = false; }