想做一个类似NumericUpDown的控件???

hxp_2008 2008-11-23 12:51:38
winform程序里想加一个像操作系统中时间设置的这种类似NumericUpDown控件的东东
想问下大家我怎么去重写NumericUpDown这个控件?或者可不可以加个TextBox再加两个Button这样去弄,可操作系统中的像“:”固定了不能动又是怎么做的?是不是加了几个TextBox又加了几个Label,反正就是想知道到底如何做就能做出这种效果?谢谢大家了!
...全文
193 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
caoyuanlang_11 2009-12-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 ycg_893 的回复:]
VS自带的DateTimePicker这个控件就完全能够实现你所要的.
将ShowUpDown 属性改成True
将Format属性改成Custom
将CustomFormat的属性改一下:
CustomFormat="yyyy-MM-dd"  // 年月日
CustomFormat="yyyy-MM-dd hh:mm:ss" // 年月日时分秒
CustomFormat="hh:mm:ss" // 时分秒
CustomFormat="'PM' hh:mm:ss" // PM标志 时分秒
CustomFormat="'PM' yyyy-MM-dd hh:mm:ss" // 年月日时分秒

可以在事件ValueChanged中根据Value的值来改PM或TM
C# codeprivatevoid dateTimePicker1_ValueChanged(object sender, EventArgs e)
{if (dateTimePicker1.Value.Hour>6)
{
dateTimePicker1.CustomFormat="'PM' yyyy-MM-dd hh:mm:ss";
}else
{
dateTimePicker1.CustomFormat="'TM' yyyy-MM-dd hh:mm:ss";
}
}

[/Quote]


这方法果然好用,不然我肯定去重写numericupdown去了,谢谢5楼!!!
caoyuanlang_11 2009-12-19
  • 打赏
  • 举报
回复
我试试1楼和5楼的操作!!!
hxp_2008 2008-11-27
  • 打赏
  • 举报
回复
按照一楼说的试了一下,效果不是很好,也不知道如何去重写NumericUpDown.
hxp_2008 2008-11-27
  • 打赏
  • 举报
回复
谢谢ycg_893!
ycg_893 2008-11-27
  • 打赏
  • 举报
回复
VS自带的DateTimePicker这个控件就完全能够实现你所要的.
将ShowUpDown 属性改成True
将Format属性改成Custom
将CustomFormat的属性改一下:
CustomFormat="yyyy-MM-dd" // 年月日
CustomFormat="yyyy-MM-dd hh:mm:ss" // 年月日时分秒
CustomFormat="hh:mm:ss" // 时分秒
CustomFormat="'PM' hh:mm:ss" // PM标志 时分秒
CustomFormat="'PM' yyyy-MM-dd hh:mm:ss" // 年月日时分秒

可以在事件ValueChanged中根据Value的值来改PM或TM

private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
if (dateTimePicker1.Value.Hour > 6)
{
dateTimePicker1.CustomFormat = "'PM' yyyy-MM-dd hh:mm:ss";
}
else
{
dateTimePicker1.CustomFormat = "'TM' yyyy-MM-dd hh:mm:ss";
}
}


longer123123 2008-11-24
  • 打赏
  • 举报
回复
我跟楼主有同样的需求
不知道楼主做出来没
长沙三毛 2008-11-23
  • 打赏
  • 举报
回复
派生NumericUpDown,重写N个方法
王集鹄 2008-11-23
  • 打赏
  • 举报
回复
TextBox换成MaskedTextBox
设置Mask属性为:“90:00”
设置PromptChar属性为空格

111,130

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧