|
DevExpress 的控件相当好看而且很好用,但 DateEdit 在是显示周名时,只能显示一个“星”字。 以下是解决方法,此解决方法不需修改其源码,所以免去了重新编译的必要,可直接使用其发布的标准DLL。 public class MyDateEdit : DevExpress.XtraEditors.DateEdit { protected override DevExpress.XtraEditors.Popup.PopupBaseForm CreatePopupForm() { return new MyPopupDateEditForm(this); } } public class MyPopupDateEditForm : DevExpress.XtraEditors.Popup.PopupDateEditForm { public MyPopupDateEditForm(MyDateEdit dateEdit) : base(dateEdit) { } protected override DevExpress.XtraEditors.Controls.DateEditCalendar CreateCalendar() { return new MyDateEditCalendar(OwnerEdit.Properties, OwnerEdit.EditValue); } } public class MyDateEditCalendar : DevExpress.XtraEditors.Controls.DateEditCalendar { public MyDateEditCalendar( DevExpress.XtraEditors.Repository.RepositoryItemDateEdit item, object editDate) : base (item, editDate) { } protected override DevExpress.XtraEditors.ViewInfo.DateEditInfoArgs CreateInfoArgs() { DevExpress.XtraEditors.ViewInfo.DateEditInfoArgs info = base.CreateInfoArgs (); System.Globalization.DateTimeFormatInfo newFormat = (System.Globalization.DateTimeFormatInfo)info.DateFormat.Clone(); // 以下是重新设置日期的周名称。 // 缺省情况下,前面带有“星期”两字,也正是因为如此才导致所谓的错误。 // 注意,当前实现未处理语言环境,仅适用于中文环境。 newFormat.AbbreviatedDayNames = new string[]{ "日", "一", "二", "三", "四", "五", "六"}; info.DateFormat = newFormat; return info; } } 使用时,只需 MyDateEdit dateEdit1 = new MyDateEdit() 就可以了。
[系统软件]如何让Expat支持中文XML [系统软件]如何让DevExpress的DateEdit控件正确显示日期的周… [系统软件]BCB6 下devexpress 安装手记 [常用软件]WinImage的 新功能 [VB.NET程序]在VB.NET里操作文本文件 选择自 bpfish 的 Bl… [VB.NET程序]远 程 数 据 库 的 访 问 [VB.NET程序]获 得 位 图 文 件 的 信 息 [VB.NET程序]VB + API 获取 IE 的 代理服务器 配制 [Delphi程序]一 个 实 用 的Delphi 屏 幕 拷 贝 程 序 的 设 [Delphi程序]在DELPHI 文 本 和 图 形 的 打 印
|