基本介绍

时间控件应用较为广泛,属性设置项也比较完善是非常好用的控件。

常设置属性、事件

CustomFormat:当Format属性设置为自定义类型时可自定义控件时间的显示格式;

Enabled:指示是否启用该控件,true为启用状态可编辑,false为禁用状态不可编辑;

MaxDate:设置控件可选择或输入的最大日期;

MinDate:设置控件可选择或输入的最小日期;

Name:指示代码中用来标识该对象的名称;

ShowUpDown:是否使用下拉日历修改日期,false为下拉日历模式,true为区域数字增减模式;

Text:与控件关联的文本,显示给用户看的内容说明;

ValueChanged事件:控件值更改时发生;

事例举例

        //切换时间调整模式及显示格式
private void btn_ChangeType_Click(object sender, EventArgs e)
{
string strValue = txt_TimeFormat.Text;
if (!string.IsNullOrWhiteSpace(strValue))
{
this.dateTimePicker1.Format = DateTimePickerFormat.Custom;
this.dateTimePicker1.CustomFormat = strValue;
this.dateTimePicker1.ShowUpDown = true; //部分时间格式转换
StringBuilder sb = new StringBuilder();
strValue = this.dateTimePicker1.Text;
if (!string.IsNullOrWhiteSpace(strValue))
{
try
{
DateTime dtime = this.dateTimePicker1.Value; if (string.IsNullOrWhiteSpace(cb_format.Text))
{
string[] strFormat = new string[cb_format.Items.Count];
for (int i = , counti = cb_format.Items.Count; i < counti; i++)
{
strFormat[i] = cb_format.Items[i].ToString();
} for (int i = , counti = strFormat.Length; i < counti; i++)
{
string str = strFormat[i]; string value1 = string.Format("【{0}→{1}】", strValue, str);
sb.AppendFormat("{0,30}{1}", value1, dtime.ToString(str)); sb.AppendLine();
sb.AppendLine(); if (i == counti - )
{
System.Globalization.GregorianCalendar gc = new System.Globalization.GregorianCalendar();
int weekOfYear = gc.GetWeekOfYear(dtime, System.Globalization.CalendarWeekRule.FirstDay, DayOfWeek.Monday);
value1 = string.Format("【{0}→{1}】", strValue, "DayOfWeek");
sb.AppendFormat("{0,30}{1}年第{2}周", value1, dtime.Year, weekOfYear); sb.AppendLine();
sb.AppendLine();
value1 = string.Format("【{0}→{1}】", strValue, "DayOfYear");
sb.AppendFormat("{0,30}{1}年第{2}天", value1, dtime.Year, dtime.DayOfYear); sb.AppendLine();
sb.AppendLine();
value1 = string.Format("【{0}→{1}】", strValue, "Number");
sb.AppendFormat("{0,30}{1}|【基数:{2}】", value1, Helpers.UtilityHelper.DateToNumberValue(dtime, date_Base.Value), date_Base.Value);
}
} }
else
{
strValue = string.Format("【{0}→{1}】", strValue, cb_format.Text);
sb.AppendFormat("{0,30}{1}", strValue, dtime.ToString(cb_format.Text));
sb.AppendLine();
sb.AppendLine();
} txt_TiemResult.Text = sb.ToString();
}
catch (Exception ex)
{
Helpers.LogHelper.ErrorMsgRecord(string.Format("【FrmText.btn_ChangeType_Click】{0}", ex.Message), ex, Helpers.UtilityHelper.GetSerialNumber());
MessageBox.Show("时间转换报错:" + ex.Message);
}
}
}
}

时间控件的下拉日历也有比较完善的属性设置就不一一例举了,至于格式的转换目前也只是例举出了一小部分。

WinForm控件之【DateTimePicker】的更多相关文章

  1. WinForm控件使用文章收藏整理完成

    对C# WinForm开发系列收集的控件使用方面进行整理, 加入了一些文章, 不断补充充实, 完善这方面. 基础 - 常用控件 C# WinForm开发系列 - CheckBox/Button/Lab ...

  2. C#中常见的winform控件命名规范

    我们知道Button 常常简称为btn,那么Winform中的其它控件呢,这篇文章在C#的winform控件命名规范 的基础上对一些控件的名称的简称进行了整理. 1. 标准控件 NO. 控件类型简写 ...

  3. C# WinForm控件、自定义控件整理(大全)

    转:http://www.cnblogs.com/top5/archive/2010/04/29/1724039.html 对C# WinForm开发系列收集的控件使用方面进行整理, 加入了一些文章, ...

  4. C#中常见的winform控件命名规范 转

    我们知道Button 常常简称为btn,那么Winform中的其它控件呢,这篇文章在C#的winform控件命名规范 的基础上对一些控件的名称的简称进行了整理. 1. 标准控件 NO. 控件类型简写 ...

  5. 在WPF中使用WinForm控件方法

    1.      首先添加对如下两个dll文件的引用:WindowsFormsIntegration.dll,System.Windows.Forms.dll. 2.      在要使用WinForm控 ...

  6. WPF 调用WinForm控件

    WPF可以使用WindowsFormsHost控件做为容器去显示WinForm控件,类似的用法网上到处都是,就是拖一个WindowsFormsHost控件winHost1到WPF页面上,让后设置win ...

  7. WinForm控件TreeView 只部分节点显示 CheckBox

    WinForm控件TreeView 只部分节点显示  CheckBox 用过asp.net的应该知道,要在treeview中实现上述功能可以使用ShowCheckBox 属性指定那些节点显示check ...

  8. Winform控件重写

    Winform控件重写 因为最近的项目中越来越多的遇到了比较特殊的一些控件,有时候我们自己封装一下可能更加方便我们的使用,下面是我们项目中用到的,简单做一个记录. TextBox控件重写 主要的控制代 ...

  9. 通过WinForm控件创建的WPF控件无法输入的问题

    今天把写的一个WPF程序发布到别的机器上执行,发现一个比较奇怪的问题:在那个机器上用英文输入法无法输入数字,非要切换到中文输入法才行:但在我的机器上却是好好的. 最开始以为是输入法的问题,弄了好一阵子 ...

  10. c#Winform控件总结

    1. C# WinForm控件.自定义控件整理(大全) (http://www.cnblogs.com/top5/archive/2010/04/29/1724039.html) 2. c#窗体控件用 ...

随机推荐

  1. C#通过HttpListener实现HTTP监听

    代码: using NLog; using System; using System.Diagnostics; using System.IO; using System.Net; using Sys ...

  2. List<T>多字段排序的一个通用类

    本文中的方法旨在解决通用的问题,非常注重效率的地方,还应该针对具体的类去写排序方法. 废话不多说,直接上代码 具体使用场景: 要排序的类 1 public class bb 2 { 3 public ...

  3. 窗体图片背景(两种方法:设置Brush.Bitmap指向图片,别的控件也可以这样)

    var   Bitmap: TBitmap; procedure TForm1.FormCreate(Sender: TObject); begin   Bitmap := TBitmap.Creat ...

  4. 解决socket.error: [Errno 98] Address already in use问题

    如果python中socket 绑定的地址正在使用,往往会出现错误, 在linux下: 则会显示“ socket.error: [Errno 98] Address already in use” 在 ...

  5. Jstack线程状态BLOCKED/TIMED_WAITING/WAITING解释

    一.线程5种状态 新建状态(New) 新创建了一个线程对象. 就绪状态(Runnable) 线程对象创建后,其他线程调用了该对象的start()方法.该状态的线程位于可运行线程池中,变得可运行,等待获 ...

  6. 源码解读·RT-Thread小内存管理算法分析

    这篇文章最初发布在RT-Thread官方论坛中,最近准备整理放到博客中来让更多人一起探讨学习. 2012年9月28日星期五 前言: 母语能力有限 概述: 这篇文字和大家分享一下今晚对RT-Thread ...

  7. jvm异常记录

    1.如果出现java.lang.OutOfMemoryError: Java heap space异常.原因:Java虚拟机的堆内存不够. 具体如下:                a.Java虚拟机 ...

  8. 第四章 .net core做一个简单的登录

    项目目标部署环境:CentOS 7+ 项目技术点:.netcore2.0 + Autofac +webAPI + NHibernate5.1 + mysql5.6 + nginx 开源地址:https ...

  9. redission-tomcat:快速实现从单机部署到多机部署

    原文地址: http://blog.jboost.cn/2019/06/29/session-redis.html 一些项目初期出于简单快速,都是做单机开发与部署,但是随着业务的扩展或对可用性要求的提 ...

  10. C#—使用InstallerProjects打包桌面应用程序

    前言 打包桌面应用程序实在是一个不常使用的东西,偶尔使用起来经常会忘东忘西的耽误时间,因此,这篇文章多以图片记录过程,也是用于备忘. 下载打包工具 C#打包桌面应用程序有很多种方法,这里介绍一种使用M ...