一个UnversalTime与本地时间相互转换的工具
来源:互联网 发布:电视和看电影软件 编辑:程序博客网 时间:2024/05/16 08:33
这是个小例侱,用于UnversalTime与本地时间的相互转换,最底下的两个空格时用来计算离现在X小时Y分前的时间的。本例程用Visual Studio 2010开发。.NET Framework 4.0。由于嫌麻烦我把修改DateTimePicker值的方法写成了一个事件。这个例程也可以算是个自定义事件的例程吧。
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace UTC_LocalTime{ public partial class Form1 : Form { private DatePickUnit dpu = new DatePickUnit(); public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string FormatString = "yyyy年M月d日 H:mm"; //y年,M月,d日,H24小时制,h12小时制,s秒 dateTimePicker1.CustomFormat = FormatString; dateTimePicker2.CustomFormat = FormatString; dateTimePicker1.Format = DateTimePickerFormat.Custom; dateTimePicker2.Format = DateTimePickerFormat.Custom; dpu.UniversalTimePicker = dateTimePicker1; dpu.LocalTimePicker = dateTimePicker2; dpu.TimeChange += new DatePickUnit.TimeChangeHandler(dpu_TimeChange); dpu.ChangeTime(DateTime.Now,false); } void dpu_TimeChange(DateTimePicker UniversalTimePicker, DateTimePicker LocalTimePicker, DateTime TimeValue, bool IsUniversalTimeChanged) { if (IsUniversalTimeChanged) { LocalTimePicker.Value = TimeValue; } else { UniversalTimePicker.Value = TimeValue.ToUniversalTime(); } } private void dateTimePicker1_ValueChanged(object sender, EventArgs e) { dpu.ChangeTime(dateTimePicker1.Value.ToLocalTime(), true); } private void dateTimePicker2_ValueChanged(object sender, EventArgs e) { dpu.ChangeTime(dateTimePicker2.Value, false); } private void button1_Click(object sender, EventArgs e) { string strHours = textBox1.Text; string strMinutes = textBox2.Text; int hours = 0; int minutes = 0; hours = Convert(strHours,true); minutes = Convert(strMinutes,false); DateTime current = DateTime.Now; current = current.AddHours(-1 * hours); current = current.AddMinutes(-1 * minutes); dpu.ChangeTime(current, false); textBox1.Text = ""; textBox2.Text = ""; } private int Convert(string strValue,bool IsHour) { int result = 0; string strTitle = string.Empty; try { if (strValue.Length > 0) { result = int.Parse(strValue); } } catch (Exception ex) { if (ex is FormatException) { if (IsHour) { strTitle = "小时"; } else { strTitle = "分钟"; } MessageBox.Show(strTitle + "数字格式错误,请重新设定!", strTitle + "格式错误",MessageBoxButtons.OK,MessageBoxIcon.Error); } } return result; } } internal class DatePickUnit { public DateTimePicker UniversalTimePicker{set;get;} public DateTimePicker LocalTimePicker{set;get;} public delegate void TimeChangeHandler(DateTimePicker UniversalTimePicker,DateTimePicker LocalTimePicker,DateTime TimeValue,bool IsUniversalTimeChanged); public event TimeChangeHandler TimeChange; public void ChangeTime(DateTime time,bool IsUniversalTimeChanged) { TimeChange(UniversalTimePicker, LocalTimePicker, time,IsUniversalTimeChanged); } }}
相关资源:http://download.csdn.net/detail/tx_officedev/3895915
- 一个UnversalTime与本地时间相互转换的工具
- java本地时间与UTC时间相互转换
- 时间戳与时间的相互转换
- 时间与时间戳的相互转换
- 时间与时间戳的相互转换
- 时间戳与日期的相互转换
- JAVA中时间与字符串的相互转换(工具类)
- 分享一个工具:OgreXMLConverter(可以将Mesh文件的Bin与Xml格式相互转换)
- js 时间格式与时间戳的相互转换
- iOS中字符串时间与时间戳的相互转换
- Java 时间戳与时间字符串的相互转换
- iOS数字时间与时间的相互转换
- 时间戳与时间格式的相互转换
- Sql查询数据库时间戳与时间的相互转换
- ios 时间与字符串相互转换,包含时区的转换
- 一个xml和map相互转换的工具类
- Android工具类——TimeUtils时间戳与时间字符串相互转换
- Python时间戳与时间,时间与时间戳的相互转换
- 关于android启动过程中logo
- SEO扫盲--什么是PV?什么是UIP?
- ORACLE 10gR2 估算表所需的空间
- 做好测试计划和测试用例的工作的关键
- 云上的日子影评
- 一个UnversalTime与本地时间相互转换的工具
- uC/OS-II系统开发笔记
- 如何获取屏蔽分辨率,状态栏高度,标题栏高度
- 单元测试
- CSS3 基本要素概览
- Python函数参数中的*,**
- 请通过执行“调试”->“Debug.Start Without Debugging”验证 web.config 中没有语法错误
- Scroll2Navigate:在 Windows 上实现“双指轻扫”触摸板翻页的 Chrome 插件
- 文件后缀名的过滤