根據本周本月本日來查詢數據 C#winform數據查詢

来源:http://www.cnblogs.com/anthonyboss/archive/2017/09/12/7508884.html
-Advertisement-
Play Games

這個我是在winform的頁面上做的 1. 首先是在頁面上添加3個lable 第一次點擊lable會有相應的數據被查詢出來 第二次點擊同一個lable會刷新所有的數據 2.點擊不同的label會有顏色提示當前點擊的是哪一個 第二次點擊的時候會還原lable的顏色 3.根據本日 本周 本月查詢數據 是 ...


這個我是在winform的頁面上做的

1. 首先是在頁面上添加3個lable   第一次點擊lable會有相應的數據被查詢出來  第二次點擊同一個lable會刷新所有的數據

2.點擊不同的label會有顏色提示當前點擊的是哪一個  第二次點擊的時候會還原lable的顏色

3.根據本日 本周 本月查詢數據  是根據時間段來查詢的  所以應該要先獲取到本日的時間段  本周的時間段和本月的時間段

本日  labDay  本周  labWeek 本月  labMonth

代碼如下

  1 public partial class frmSelCase
  2     {
  3          private List<Label> m_lstLabel = new List<Label>();
  4      }
  5 
  6 //單數次顏色變為藍色  偶數次顏色為預設色
  7 bool[] labelClick = { false, false, false };
  8 
  9 private void initControls()
 10         {
 11             //三個lable的點擊事件
 12             labDay.Click += new EventHandler(labDay_Click);
 13             labWeek.Click += new EventHandler(labWeek_Click);
 14             labMonth.Click += new EventHandler(labMonth_Click);
 15 
 16             initResonArray();
 17             for (int i = 0; i < m_lstLabel.Count; i++)
 18             {
 19                 Label labLeaveReson = m_lstLabel[i];
 20                 labLeaveReson.Click += new EventHandler(lab_Click);
 21             }
 22          }
 23 
 24 private void initResonArray()
 25         {
 26             m_lstLabel.Add(labDay);
 27             m_lstLabel.Add(labWeek);
 28             m_lstLabel.Add(labMonth);
 29         }
 30 
 31 //將切換了lable顏色的事件我寫到了一起
 32 
 33  private void lab_Click(object sender, EventArgs e)
 34         {
 35             if (null == m_lstLabel) return;
 36             if (null == sender) return;
 37             Label labCurClick = (Label)sender;
 38 
 39             for (int i = 0; i < m_lstLabel.Count; i++)
 40             {
 41                 Label labReson = m_lstLabel[i];
 42 
 43                 if (labReson.Name == labCurClick.Name && labelClick[i] == false)
 44                 {
 45                     if (labReson.BackColor != Color.FromArgb(16, 155, 246)) labReson.BackColor = Color.FromArgb(16, 155, 246);
 46                     if (labReson.ForeColor != Color.FromArgb(255, 255, 255)) labReson.ForeColor = Color.FromArgb(255, 255, 255);
 47                     labelClick[i] = true;
 48                 }
 49                 else
 50                 {
 51                     if (labReson.BackColor != Color.FromArgb(217, 229, 238)) labReson.BackColor = Color.FromArgb(217, 229, 238);
 52                     if (labReson.ForeColor != Color.FromArgb(17, 95, 124)) labReson.ForeColor = Color.FromArgb(17, 95, 124);
 53                     labelClick[i] = false;
 54                 }
 55             }
 56         }
 57 
 58 //獲取時間段
 59   private void getDateRange(DateRange range, out DateTime startTime, out DateTime endTime)
 60         {
 61             startTime = DateTime.MinValue;
 62             endTime = DateTime.MinValue;
 63 
 64             DateTime dtNow = DateTime.Now;
 65 
 66             switch (range)
 67             {
 68                 case DateRange.Day:
 69                     startTime = dtNow.Date;
 70                     endTime = dtNow.AddDays(1).AddSeconds(-1);
 71                     break;
 72                 case DateRange.Week:
 73                     startTime = dtNow.Date.AddDays(1 -Convert.ToInt32(dtNow.DayOfWeek.ToString("d")));
 74                     endTime = startTime.AddDays(7).AddSeconds(-1);
 75                     break;
 76                 case DateRange.Month:
 77                     startTime = dtNow.Date.AddDays(1 - DateTime.Now.Date.Day);
 78                     endTime = startTime.AddMonths(1).AddSeconds(-1);
 79                     break;
 80                 case DateRange.None:
 81                 default:
 82                     break;
 83             }
 84         }
 85 
 86 //單擊本日 查詢本日的數據 再點擊一下就還原lable的顏色和初始數據
 87    private void labDay_Click(object sender, EventArgs e)
 88         {
 89             if (DateRange.Day == m_dateRange)
 90             {
 91                 m_dateRange = DateRange.None;
 92             }
 93             else
 94             {
 95                 m_dateRange = DateRange.Day;
 96             }
 97             getDateRange(m_dateRange, out m_dtFilter_StartTime, out m_dtFilter_EndTime);
 98             String strInputText = InputText.ToUpper();
 99             if (SysDefine.FAILED == refreshList(0, strInputText))
100             {
101                 MessageBox.Show(this.ErrorText, "信息", MessageBoxButtons.OK, MessageBoxIcon.Warning);
102             }
103         }
104 
105 //單擊本周 查詢本周的數據 再點擊一下就還原lable的顏色和初始數據
106         private void labWeek_Click(object sender, EventArgs e)
107         {
108             if (DateRange.Week == m_dateRange)
109             {
110                 m_dateRange = DateRange.None;
111             }
112             else
113             {
114                 m_dateRange = DateRange.Week;
115             }
116 
117             getDateRange(m_dateRange, out m_dtFilter_StartTime, out m_dtFilter_EndTime);
118 
119             String strInputText = InputText.ToUpper();
120             if (SysDefine.FAILED == refreshList(0, strInputText))
121             {
122                 MessageBox.Show(this.ErrorText, "信息", MessageBoxButtons.OK, MessageBoxIcon.Warning);
123             }
124            
125         }
126 
127 //單擊本月 查詢本月的數據 再點擊一下就還原lable的顏色和初始數據
128         private void labMonth_Click(object sender, EventArgs e)
129         {
130             if (DateRange.Month == m_dateRange)
131             {
132                 m_dateRange = DateRange.None;
133             }
134             else
135             {
136                 m_dateRange = DateRange.Month;
137             }
138 
139             getDateRange(m_dateRange, out m_dtFilter_StartTime, out m_dtFilter_EndTime);
140 
141             String strInputText = InputText.ToUpper();
142             if (SysDefine.FAILED == refreshList(0, strInputText))
143             {
144                 MessageBox.Show(this.ErrorText, "信息", MessageBoxButtons.OK, MessageBoxIcon.Warning);
145             }
146         }
147 
148 //將當前lable的狀態定位四個  未選中  選中day  選中week  選中 Month
149   private DateRange m_dateRange = DateRange.None;
150   private enum DateRange
151     {
152       None = 0,
153       Day = 1,
154       Week = 2,
155       Month = 3
156     }
157 
158   public String InputText
159     {
160      get { return ucPages.InputText; }
161      set { ucPages.InputText = value; }
163     }
164 
165   private DateTime m_dtFilter_StartTime = DateTime.MinValue;
166   public DateTime Filter_StartDate
167     {
168      get { return m_dtFilter_StartTime; }
169     }
170 
171   private DateTime m_dtFilter_EndTime = DateTime.MinValue;
172   public DateTime Filter_EndDate
173     {
174      get { return m_dtFilter_EndTime; }
175     }

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Windows Service簡介: 一個Windows服務程式是在Windows操作系統下能完成特定功能的可執行的應用程式。Windows服務程式雖然是可執行的,但是它不像一般的可執行文件通過雙擊就能開始運行了,它必須有特定的啟動方式。這些啟動方式包括了自動啟動和手動啟動兩種。對於自動啟動的Win ...
  • 一. Ubuntu 14.04 安裝 1.安裝之前請先刪除之前的.net core 版本 命令如下: 1.1 獲取安裝的.net core 版本 sudo apt --installed list | grep "dotnet-dev" 1.2 刪除安裝的.net core 版本 sudo apt- ...
  • 在Entity Framework Core 2.0中增加一個很酷的功能:EF.Functions.Like(),最終解析為SQL中的 Like 語句,以便於在 LINQ 查詢中直接調用。不過Entity Framework 中預設提供了 StartsWith、Contains 和 EndsWith... ...
  • 如果需要調試 WPF 源代碼或框架源代碼,那麼需要使用 DotPeek ...
  • 需求:在一些重要的Word文檔需要列印時,添加水印以明出處。 方案:使用Aspose組件給word文檔 代碼:乾貨如下 /// <summary> /// Inserts a watermark into a document. /// </summary> /// <param name="doc ...
  • .Net在Framework4.0中增加了任務並行庫,對開發人員來說利用多核多線程CPU環境變得更加簡單,TPL正符合我們本系列的技術需求。因TPL涉及內容較多,且本系列文章為非同步程式開發,所以本文並未涉及TPL全部內容。後續會寫一個TPL系列的Blog,各位朋友可以關註一下。 ...
  • 1.主要是使用控制項綁定點擊事件 用到的控制項分別為picturebox lable 上一頁pbPage_Prev 下一頁 pbPage_Next 首頁 pbPage_Begin 尾頁pbPage_End 是picturebox控制項加背景圖 “第 頁/ 共 頁” 是一個lable “labPageInf ...
  • 最近新升級了Visual Studio 2017,創建的Web項目Bin目錄中多了一個叫roslyn的文件夾,該文件夾導致網站在某些伺服器上發佈出錯 從網上搜索了一下,Roslyn是新出的動態編譯工具 但是在伺服器上安裝.net4.6後仍然提示編譯出錯。 解決方法:打開解決方案NuGet包管理器,卸 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...