DatetimePicker 作为vs自带控件,它的功能还是挺好的,为我们提供了很大的方便。但是,用这个控件时,如果为了操作上方便会出现一些小问题,比如:如何判断当前选中的是年还是月、日。对于这个问题可以用一些笨方法解决。

实现功能:  DatetimePicker 显示为 年/月/日, 按Enter键自动跳转,到日后 焦点移动到其他控件

对于Enter键实现年月日间的切换大家很容易想到,那就是用控件自带的功能: 当按下 left,right 键时左右切换。

if(e.KeyChar==13)
{
SendKeys.Send("{right}");
}

这样就可以实现年月日的切换。

下面是实现到“日”(最后的内容)后,将焦点转移到其他控件

方法也类似。首先,用控件自带的功能: 当按下 up,down 键时值的变化,这样在ValueChange事件中判断变化的是哪一部分,如果是日在改变,焦点转移。

具体一看代码便明白:

if(e.KeyChar==13)
{
SendKeys.Send("{right}");
SendKeys.Send("{up}");//
SendKeys.Send("{down}");//来回切换不会改变原值,由它触发ValueChange事件
if(IsDayChange)
{
IsDayChange=false;
SendKeys.Send("{tab}");
}
}
private void dateTimePicker1_ValueChanged(object sender, System.EventArgs e)
{
if(dateTimePicker1.Value.Day != CurrentDay)
{
IsDayChange=true;
}
CurrentDay= dateTimePicker1.Value.Day;
}

这样就OK了。CurrentDay,IsDayChange是两个全局变量。 还有一些问题,那就根据情况,自己对应了。

DatetimePicker 作为vs自带控件,它的功能还是挺好的,为我们提供了很大的方便。但是,用这个控件时,如果为了操作上方便会出现一些小问题,比如:如何判断当前选中的是年还是月、日。对于这个问题可以用一些笨方法解决。       实现功能:  DatetimePicker 显示为 年/月/日, 按Enter键自动跳转,到日后 焦点移动到其他控件           HANDLE hOut; //新建句柄 hOut hOut=GetStdHandle(STD_OUTPUT_HANDLE); //实例化句柄 hOut COORD pos={0,0}; //COORD是Windows API中定义的一种结构,表示一个字符在控制台屏幕上的坐标。 int i; Set...
有些软件的 效性比较强,首先需要进行的是修改 DateTimePicker 控件上的“天”,通过下拉表进行选择的话并不算方便,直接 输入 又需从年切换至月再切换至 ,如此太麻烦,能把 焦点 直接定位到 上就方便多了。(注意TabIndex对 焦点 的影响) 普通情况下: Code1:         private void FormMain_Load(object sender, EventArgs e)
DateTimePicker 是一种能够直观显示短 期/ 间的控件,我想在Win32工程下,只利用API函数来使用它,以下为自己的使用方法总结: 前提:已经利用可视化界面直接拖放一个 DateTimePicker 控件在对话框指定的 位置 ,然后设置ID名为IDC_ DATETIMEPICKER 1; 1、 获取 DTP上的 间     为了 获取 当前 显示的 间(注:在创建控件后不添加任何代码运行的话,DTP会
首先需要将 dateTimePicker 2的format设定为time格式,然后再form_load中初始化: private void Form1_Load(object sender, EventArgs e) //-----------------------------
datetimepicker 位置 pickerPosition 有以下几个属性值,望文生义不解释 $(’.form_datetime’). datetimepicker ({ pickerPosition: ‘botom-left’, pickerPosition: ‘bottom-right’, pickerPosition: ‘top-left’, pickerPosition: ‘to...
在Form3窗体加入如下代码控制月份的显示(本例为只显示本月和下个月份 间):   private void Form3_Load(object sender, EventArgs e)           this. dateTimePicker 1.Value = DateTime.Tod
无聊的 候 会做出无聊的事情, 项目中使用 DateTimePicker 控件 有客户提出能不能随鼠标上下滚动 改变 DateTimePicker 控件对应的值,  本人当 就想出如下方案:    方案一: 获取 鼠标 焦点 停在 DateTimePicker 控件具体 位置 (年、月、 | 、分、秒) , 那问题就可以很容易解决。          如果对应停靠在“年”上,那么我上下滚动 就可通过 期函
你可以使用 WinForms 中的 DateTimePicker 控件来选择年、月、 、小 、分钟和秒。以下是一个示例代码,展示了如何设置 DateTimePicker 控件以选择完整的 期和 间: ```csharp using System; using System.Windows.Forms; namespace DateTimePicker Example public partial class MainForm : Form public MainForm() InitializeComponent(); private void MainForm_Load(object sender, EventArgs e) // 设置 DateTimePicker 控件的格式为自定义格式,包含年、月、 、分和秒 dateTimePicker 1.Format = DateTimePicker Format.Custom; dateTimePicker 1.CustomFormat = "yyyy-MM-dd HH:mm:ss"; private void dateTimePicker 1_ValueChanged(object sender, EventArgs e) // 当 DateTimePicker 的值发生变化 ,可以通过 Value 属性 获取 选择的 期和 间 DateTime selectedDateTime = dateTimePicker 1.Value; MessageBox.Show(selectedDateTime.ToString()); 在上述示例中,我们通过设置 DateTimePicker 的 Format 属性为 Custom,并指定 CustomFormat 属性的值为 "yyyy-MM-dd HH:mm:ss",来定义 DateTimePicker 控件的显示格式。然后,可以通过 ValueChanged 事件来 获取 用户选择的 期和 间。 希望这可以帮助到你!如果你还有其他问题,请随 提问。