如何让DevExpress的DateEdit控件正确显示日期的周名

原创|其它|编辑:郝浩|2005-09-14 10:32:00.000|阅读 2682 次

概述:

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>


DevExpress 的控件相当好看而且很好用,但 DateEdit 在是显示周名时,只能显示一个“星”字。»更多DevExpress开发资源与帮助文档

以下是解决方法,此解决方法不需修改其源码,所以免去了重新编译的必要,可直接使用其发布的标准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() 就可以了。


(慧都控件网版权所有,转载请注明出处,否则追究法律责任)



标签:DevExpress

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP