如何以编程方式突出显示DateTimePicker中的特定部分?

问题描述 投票:3回答:1

我有一个DateTimePicker控件(自定义格式)到我正在以编程方式生成的Windows窗体应用程序。

要突出显示其中的特定部分/部分(例如小时),我必须手动点击它。我需要能够以编程方式在DateTimePicker的特定部分执行此突出显示(而不是通过手动单击)。

我已经尝试使用DateTimePicker控件的事件,方法和其他属性。我也搜索并重新搜索了互联网,并没有找到方向。

这是一个插图的截图:

enter image description here

在这里,在DataGridView的单元格上,是我的自定义格式DateTimePicker。

c# .net winforms datetimepicker
1个回答
0
投票

我终于找到了解决方案。我想分享它,以便将来有类似问题的人可以从中受益。

DateTimePicker(DTP)失去通常行为的原因是因为:

  • 它是以编程方式生成的,并且“添加”作为GridView的控件(而不是表单)

因此,诸如“Select()”和“Focus()”之类的常规方法未能应用。

我只是将DTP控件放在表单上并使其不可见。然后,每当我需要编辑一个单元格时,控件覆盖单元格并将焦点移动到它。像普通的DTP控件一样,现在它会自动突出显示第一部分,即我的小时。

这是解决方案的本质。休息是处理意外事件。由于它是某个客户的产品,我无法共享代码。

© www.soinside.com 2019 - 2024. All rights reserved.