我以编程方式创建了一个 DateTimePicker,如下所示:
Controls.Add(new DateTimePicker { Name = "txtPaymentDate",
Location = new Point(146, 232),
Size = new Size(113, 20),
Format = DateTimePickerFormat.Custom,
CustomFormat = " ", TabStop = false });
如果 DateTimePicker 未打开,它将没有默认日期。但每当我使用关闭事件选择日期时,我都想更改日期时间格式。但是,由于 DateTimePicker 是手动创建的,我不知道如何为其创建事件。
如何为其创建事件?
最佳答案
你可以这样做
DateTimePicker myPicker = new DateTimePicker { Name = "txtPaymentDate",
Location = new Point(146, 232),
Size = new Size(113, 20),
Format = DateTimePickerFormat.Custom,
CustomFormat = " ",
TabStop = false };
myPicker.CloseUp += myPicker_CloseUp;
Controls.Add(myPicker);
private void myPicker_CloseUp(object sender, EventArgs e)
{
if (sender is DateTimePicker)
{
((DateTimePicker)sender).Format = 'dd-MM-yyyy';
}
}
如果您希望事件只为特定的 DateTimePicker(按名称)执行操作,您可以这样做:
private void myPicker_CloseUp(object sender, EventArgs e)
{
if (sender is DateTimePicker)
{
if (DateTimePicker)sender).Name == "txtPaymentDate")
((DateTimePicker)sender).Format = 'dd-MM-yyyy';
}
}
关于c# - 为以编程方式创建的 DateTimePicker 创建事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49011776/