这个我是在winform的页面上做的

1. 首先是在页面上添加3个lable   第一次点击lable会有相应的数据被查询出来  第二次点击同一个lable会刷新所有的数据

2.点击不同的label会有颜色提示当前点击的是哪一个  第二次点击的时候会还原lable的颜色

3.根据本日 本周 本月查询数据  是根据时间段来查询的  所以应该要先获取到本日的时间段  本周的时间段和本月的时间段

本日  labDay  本周  labWeek 本月  labMonth

代码如下

 public partial class frmSelCase
{
private List<Label> m_lstLabel = new List<Label>();
} //单数次颜色变为蓝色 偶数次颜色为默认色
bool[] labelClick = { false, false, false }; private void initControls()
{
//三个lable的点击事件
labDay.Click += new EventHandler(labDay_Click);
labWeek.Click += new EventHandler(labWeek_Click);
labMonth.Click += new EventHandler(labMonth_Click); initResonArray();
for (int i = ; i < m_lstLabel.Count; i++)
{
Label labLeaveReson = m_lstLabel[i];
labLeaveReson.Click += new EventHandler(lab_Click);
}
} private void initResonArray()
{
m_lstLabel.Add(labDay);
m_lstLabel.Add(labWeek);
m_lstLabel.Add(labMonth);
} //将切换了lable颜色的事件我写到了一起 private void lab_Click(object sender, EventArgs e)
{
if (null == m_lstLabel) return;
if (null == sender) return;
Label labCurClick = (Label)sender; for (int i = ; i < m_lstLabel.Count; i++)
{
Label labReson = m_lstLabel[i]; if (labReson.Name == labCurClick.Name && labelClick[i] == false)
{
if (labReson.BackColor != Color.FromArgb(, , )) labReson.BackColor = Color.FromArgb(, , );
if (labReson.ForeColor != Color.FromArgb(, , )) labReson.ForeColor = Color.FromArgb(, , );
labelClick[i] = true;
}
else
{
if (labReson.BackColor != Color.FromArgb(, , )) labReson.BackColor = Color.FromArgb(, , );
if (labReson.ForeColor != Color.FromArgb(, , )) labReson.ForeColor = Color.FromArgb(, , );
labelClick[i] = false;
}
}
} //获取时间段
private void getDateRange(DateRange range, out DateTime startTime, out DateTime endTime)
{
startTime = DateTime.MinValue;
endTime = DateTime.MinValue; DateTime dtNow = DateTime.Now; switch (range)
{
case DateRange.Day:
startTime = dtNow.Date;
endTime = dtNow.AddDays().AddSeconds(-);
break;
case DateRange.Week:
startTime = dtNow.Date.AddDays( -Convert.ToInt32(dtNow.DayOfWeek.ToString("d")));
endTime = startTime.AddDays().AddSeconds(-);
break;
case DateRange.Month:
startTime = dtNow.Date.AddDays( - DateTime.Now.Date.Day);
endTime = startTime.AddMonths().AddSeconds(-);
break;
case DateRange.None:
default:
break;
}
} //单击本日 查询本日的数据 再点击一下就还原lable的颜色和初始数据
private void labDay_Click(object sender, EventArgs e)
{
if (DateRange.Day == m_dateRange)
{
m_dateRange = DateRange.None;
}
else
{
m_dateRange = DateRange.Day;
}
getDateRange(m_dateRange, out m_dtFilter_StartTime, out m_dtFilter_EndTime);
String strInputText = InputText.ToUpper();
if (SysDefine.FAILED == refreshList(, strInputText))
{
MessageBox.Show(this.ErrorText, "信息", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
} //单击本周 查询本周的数据 再点击一下就还原lable的颜色和初始数据
private void labWeek_Click(object sender, EventArgs e)
{
if (DateRange.Week == m_dateRange)
{
m_dateRange = DateRange.None;
}
else
{
m_dateRange = DateRange.Week;
} getDateRange(m_dateRange, out m_dtFilter_StartTime, out m_dtFilter_EndTime); String strInputText = InputText.ToUpper();
if (SysDefine.FAILED == refreshList(, strInputText))
{
MessageBox.Show(this.ErrorText, "信息", MessageBoxButtons.OK, MessageBoxIcon.Warning);
} } //单击本月 查询本月的数据 再点击一下就还原lable的颜色和初始数据
private void labMonth_Click(object sender, EventArgs e)
{
if (DateRange.Month == m_dateRange)
{
m_dateRange = DateRange.None;
}
else
{
m_dateRange = DateRange.Month;
} getDateRange(m_dateRange, out m_dtFilter_StartTime, out m_dtFilter_EndTime); String strInputText = InputText.ToUpper();
if (SysDefine.FAILED == refreshList(, strInputText))
{
MessageBox.Show(this.ErrorText, "信息", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
} //将当前lable的状态定位四个 未选中 选中day 选中week 选中 Month
private DateRange m_dateRange = DateRange.None;
private enum DateRange
{
None = ,
Day = ,
Week = ,
Month =
} public String InputText
{
get { return ucPages.InputText; }
set { ucPages.InputText = value; }
} private DateTime m_dtFilter_StartTime = DateTime.MinValue;
public DateTime Filter_StartDate
{
get { return m_dtFilter_StartTime; }
} private DateTime m_dtFilter_EndTime = DateTime.MinValue;
public DateTime Filter_EndDate
{
get { return m_dtFilter_EndTime; }
}

根据本周本月本日来查询数据 C#winform数据查询的更多相关文章

  1. MYSQL查询今天昨天本周本月等的数据

    mysql查询本季度 今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 SELECT *FROM表名WHERE TO_DAYS ...

  2. oracle 查询本周数据生成下周数据

      CreateTime--2018年1月4日16:38:01 Author:Marydon oracle 查询本周数据生成下周数据 第一步:查询指定区间数据 第二步:改变查询结果的值 查询日期字段+ ...

  3. MySQL - 查询今天的数据(以及昨天、本月、上个月、今年...) 查询Datetime 时间的数据

    1,查询当天(今天)的数据 1 SELECT * FROM `order` WHERE TO_DAYS(order_time) = TO_DAYS(NOW()) 2,查询昨天的数据 1 SELECT  ...

  4. Mysql按周,按月,按日,按小时分组统计数据

    按周   select DATE_FORMAT(create_time,'%Y%u') weeks,count(caseid) count from tc_case group by weeks;   ...

  5. mysql 查询一个月的数据

    //今天 select * from 表名 where to_days(时间字段名) = to_days(now()); //昨天 SELECT * FROM 表名 WHERE TO_DAYS( NO ...

  6. 关于MYSQL的查询时间段、删除数据、查询目标行的命令用法。

    Q1.第一次工作写命令时,写了一个把一个表的数据插入到另一个表中,运行时命令长时间处于执行状态. A.第一次处理数据库大量数据,长时间按运行属于正常现象,这与学校中的小数据不同. Q2.如何查询数据库 ...

  7. 使用TSQL查询和更新 JSON 数据

    JSON是一个非常流行的,用于数据交换的文本数据(textual data)格式,主要用于Web和移动应用程序中.JSON 使用“键/值对”(Key:Value pair)存储数据,能够表示嵌套键值对 ...

  8. ASP.NET MVC5+EF6+EasyUI 后台管理系统(81)-数据筛选(万能查询)

    系列目录 前言 听标题的名字似乎是一个非常牛X复杂的功能,但是实际上它确实是非常复杂的,我们本节将演示如何实现对数据,进行组合查询(数据筛选) 我们都知道Excel中是如何筛选数据的.就像下面一样 他 ...

  9. MYSQL基础操作之数据约束与关联查询

    一.MYSQL约束 1.默认值约束,当字段没有插入值的时候,mysql自动给该字段分配默认值. 默认值的字段允许为空. 对默认值字段也可以插入null. CREATE TABLE STUDENT( I ...

随机推荐

  1. hdu--1026--Ignatius and the Princess I(bfs搜索+dfs(打印路径))

    Ignatius and the Princess I Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (J ...

  2. ECMAScript6-let与const命令详解

    前言 <ECMAScript入门>是一本开源的JavaScript语言教程,全面介绍ECMAScript6新引入的语法特性. let和const命令,是第一章开始介绍,也是比较基础的知识. ...

  3. ArrayList 和Vector ,HashTable和HashMap异同

    相同点: 1.都实现了List接口(List接口继承自Collection接口) 2.有序集合,数据可重复,可按索引号取值(而HashSet无序,不可重复) 不同点: 1.Vector是线程安全的,而 ...

  4. 社群系统ThinkSNS V4.5.29 APP更新发布,新增用户认证及系统消息

    社群系统ThinkSNS V4版本移动端APP将于7月29日更新发布,本次更新修复部分bug,最主要是增加了移动端APP的用户认证功能,以及添加了系统消息,为V4.5.29版本发布.这两个功能PC端的 ...

  5. Python2和Python3的一些语法区别

    Python2和Python3的一些语法区别 python 1.print 在版本2的使用方法是: print 'this is version 2 也可以是 print('this is versi ...

  6. 优秀开源软件学习系列(一)——从零学习Spring4以及学习方法分享

    一.目的1.掌握Spring4怎样使用,以便将这个框架作为自己的一项技能.2.掌握Spring官网是怎样介绍其产品的,在心中对Spring有最官方的.最直观的了解.在Spring的相关领域,能够知道怎 ...

  7. Java 脚本引擎

    脚本引擎,就是一个编程语言的解释器,它的功能是解释执行用户的程序文本,将它译成计算机能执行的机器代码,完成一系列的功能. Java脚本引擎简单地说就是指Java提供的一组兼容操作各种脚本语言的的API ...

  8. 关于div+css排版布局中需注意的细节问题

    第一个注意点:选择器的使用(标签.class.id) 三种选择器中id(#)的优先级最高,根据id名筛选出唯一元素: 如下输入:#menu{ width:1200px; height:45px; ba ...

  9. C++之STL总结精华笔记

                       一.一般介绍      STL(StandardTemplate Library),即标准模板库,是一个具有工业强度的,高效的C++程序库.它被容纳于C++标准程 ...

  10. Window检测网络连接情况

    Window检测网络连接情况 #include "Wininet.h" #pragma comment(lib,"Wininet.lib") DWORD fla ...