根據本周本月本日來查詢數據 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
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...