对于. NET(Winforms)应用程序,是否有翻转时钟控件?
理想情况下,它会看起来像黑莓Bold上的一个:
alt text http://images.crackberry.com/files/u3/reviewimages/blackberry9000c/lgclock3.jpg
- 更新1:**
在这个SO链接之后,我向我的项目添加了一个元素宿主,以宿主@Shane提到的WPF retrocock。
- 更新2:**
我遵循的几个步骤:
- 编译倒计时
- 添加对WinForm应用程序的DLL引用
- 添加"使用WPFControls.Clocks;"
- 将"elementHost"添加到窗体
- 在窗体加载事件中添加:
//create retroclock
RetroClock rc = new RetroClock();
//add retroclock to element host
elementHost1.Child = rc;
- 更新3:**
设计时钟样式
//style clock
rc.Height = 30;
rc.IncludeLeadingZero = true;
rc.IsAmPmVisible = true;
rc.FontSize = 60;
rc.HorizontalAlignment = System.Windows.HorizontalAlignment.Center;
rc.TimeFormat = TimeFormats.Hour12;
4条答案
按热度按时间q5lcpyga1#
与Joel的答案沿着,WPF here也有一个简单的答案。
xurqigkl2#
这对winforms来说有点不合适,它的主要目的是向.Net公开公共控件,以帮助开发人员构建使用“标准”外观和感觉的windows应用程序。这并不意味着你找不到一个,但你应该首先考虑第三方。微软提供的任何东西充其量都是事后诸葛亮。
另一方面,WPF更适合这类事情。
cld4siwp3#
自己做一个很容易。添加一个类,从Control派生它。你需要一个计时器来保持它的运行,让它的Tick方法调用Invalidate()。重写OnPaint()来绘制数字和am/pm指示器。你需要TextRenderer.DrawText()重载来在矩形内绘制,以使数字居中。通过中心绘制一条黑线。
应该会很有趣。
balp4ylt4#
有一个免费的UIElement HandyControl由迈赫迪·侯赛尼https://marketplace.visualstudio.com/items?itemName=MahdiHosseini.HandyControls
希望能有所帮助。