/// <summary> /// 查詢案場 /// </summary> public override void Search_Setting() { var CaseSetting = Ewatch_MySqlMethod.CaseLoad(); gridControl1.DataSource = CaseSetting; if (!Flag) { gridView1.CustomColumnDisplayText += (s, ex) => { if (ex.Column.FieldName == "NotifyTypeEnum") { int val = (int)ex.Value; switch (val) { case 0: { ex.DisplayText = "None"; } break; case 1: { ex.DisplayText = "LineNotify"; } break; case 2: { ex.DisplayText = "TelegramBot"; } break; } } }; gridView1.OptionsBehavior.Editable = false; gridView1.OptionsSelection.EnableAppearanceFocusedCell = false; for (int i = 0; i < gridView1.Columns.Count; i++) { gridView1.Columns[i].BestFit(); } gridView1.Columns["PK"].Visible = false; gridView1.Columns["CaseNo"].Caption = "案場編號"; gridView1.Columns["Address"].Caption = "地址"; gridView1.Columns["Contacter"].Caption = "聯絡人"; gridView1.Columns["Phone"].Caption = "聯絡電話"; gridView1.Columns["TitleName"].Caption = "案場名稱"; gridView1.Columns["NotifyTypeEnum"].Caption = "推播類型"; gridView1.Columns["NotifyApi"].Caption = "推播網址"; gridView1.Columns["NotifyToken"].Caption = "推播權杖"; gridView1.Columns["Longitude"].Caption = "經度"; gridView1.Columns["Latitude"].Caption = "緯度"; #region 報表行聚焦 gridView1.FocusedRowChanged += (s, ex) => { ColumnView view = (ColumnView)s; if ((view.FindFilterText == "" || view.ActiveFilterString != "") & !SortGlyphFlag) { if (ex.FocusedRowHandle > -1) { CaseNotextEdit.Text = view.GetListSourceRowCellValue(ex.FocusedRowHandle, "CaseNo").ToString(); AddresstextEdit.Text = view.GetListSourceRowCellValue(ex.FocusedRowHandle, "Address").ToString(); ContactertextEdit.Text = view.GetListSourceRowCellValue(ex.FocusedRowHandle, "Contacter").ToString(); PhonetextEdit.Text = view.GetListSourceRowCellValue(ex.FocusedRowHandle, "Phone").ToString(); TitleNametextEdit.Text = view.GetListSourceRowCellValue(ex.FocusedRowHandle, "TitleName").ToString(); NotifyTypeEnumcomboBoxEdit.SelectedIndex = Convert.ToInt32(view.GetListSourceRowCellValue(ex.FocusedRowHandle, "NotifyTypeEnum")); NotifyApitextEdit.Text = view.GetListSourceRowCellValue(ex.FocusedRowHandle, "NotifyApi").ToString(); NotifyTokentextEdit.Text = view.GetListSourceRowCellValue(ex.FocusedRowHandle, "NotifyToken").ToString(); LongitudetextEdit.Text = view.GetListSourceRowCellValue(ex.FocusedRowHandle, "Longitude").ToString(); LatitudetextEdit.Text = view.GetListSourceRowCellValue(ex.FocusedRowHandle, "Latitude").ToString(); } } else { if (ex.FocusedRowHandle > -1) { if (FilterCaseSetting.Count > 0 && FilterCaseSetting.Count > ex.FocusedRowHandle) { CaseNotextEdit.Text = FilterCaseSetting[ex.FocusedRowHandle].CaseNo; AddresstextEdit.Text = FilterCaseSetting[ex.FocusedRowHandle].Address; ContactertextEdit.Text = FilterCaseSetting[ex.FocusedRowHandle].Contacter; PhonetextEdit.Text = FilterCaseSetting[ex.FocusedRowHandle].Phone; TitleNametextEdit.Text = FilterCaseSetting[ex.FocusedRowHandle].TitleName; NotifyTypeEnumcomboBoxEdit.SelectedIndex = FilterCaseSetting[ex.FocusedRowHandle].NotifyTypeEnum; NotifyApitextEdit.Text = FilterCaseSetting[ex.FocusedRowHandle].NotifyApi; NotifyTokentextEdit.Text = FilterCaseSetting[ex.FocusedRowHandle].NotifyToken; LongitudetextEdit.Text = FilterCaseSetting[ex.FocusedRowHandle].Longitude.ToString(); LatitudetextEdit.Text = FilterCaseSetting[ex.FocusedRowHandle].Latitude.ToString(); } } } }; #endregion #region 報表行刪除 gridView1.RowDeleting += (s, ex) => { ColumnView view = (ColumnView)s; string CaseNo = CaseNotextEdit.Text; Ewatch_MySqlMethod.Delete_CaseSetting(CaseNo); }; #endregion #region 關鍵字搜尋 gridView1.ColumnFilterChanged += (s, e) => { GridView view = s as GridView; if (view.FindFilterText != "" || view.ActiveFilterString != "") { FilterCaseSetting = new List <CaseSetting>(); for (int i = 0; i < view.RowCount; i++) { if (view.IsGroupRow(i)) { continue; } var entity = view.GetRow(i) as CaseSetting; if (entity == null) { continue; } FilterCaseSetting.Add(entity); } } if (FilterCaseSetting.Count > 0) { CaseNotextEdit.Text = FilterCaseSetting[0].CaseNo; AddresstextEdit.Text = FilterCaseSetting[0].Address; ContactertextEdit.Text = FilterCaseSetting[0].Contacter; PhonetextEdit.Text = FilterCaseSetting[0].Phone; TitleNametextEdit.Text = FilterCaseSetting[0].TitleName; NotifyTypeEnumcomboBoxEdit.SelectedIndex = FilterCaseSetting[0].NotifyTypeEnum; NotifyApitextEdit.Text = FilterCaseSetting[0].NotifyApi; NotifyTokentextEdit.Text = FilterCaseSetting[0].NotifyToken; LongitudetextEdit.Text = FilterCaseSetting[0].Longitude.ToString(); LatitudetextEdit.Text = FilterCaseSetting[0].Latitude.ToString(); } }; #endregion #region 表頭篩選 gridView1.EndSorting += (s, e) => { GridView view = s as GridView; FilterCaseSetting = new List <CaseSetting>(); for (int i = 0; i < view.RowCount; i++) { if (view.IsGroupRow(i)) { continue; } var entity = view.GetRow(i) as CaseSetting; if (entity == null) { continue; } FilterCaseSetting.Add(entity); } SortGlyphFlag = true; gridView1.FocusedRowHandle = 0; }; #endregion gridView1.FocusedRowHandle = 1; Flag = true; } else { gridControl1.Refresh(); } }