熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

DevExpress的DateEdit控件顯示日期的周名

2013-11-13 10:15:27  來源: .NET編程 

  DevExpress 的控件相當好看而且很好用但 DateEdit 在是顯示周名時只能顯示一個
  
  以下是解決方法此解決方法不需修改其源碼所以免去了重新編譯的必要可直接使用其發布的標准DLL
  
   public class MyDateEdit : DevExpressXtraEditorsDateEdit
   {
    protected override DevExpressXtraEditorsPopupPopupBaseForm CreatePopupForm()
    {
    return new MyPopupDateEditForm(this);
    }
   }
  
   public class MyPopupDateEditForm : DevExpressXtraEditorsPopupPopupDateEditForm
   {
    public MyPopupDateEditForm(MyDateEdit dateEdit) : base(dateEdit)
    {
    }
  
    protected override DevExpressXtraEditorsControlsDateEditCalendar CreateCalendar()
    {
    return new MyDateEditCalendar(OwnerEditProperties OwnerEditEditValue);
    }
  
   }
  
   public class MyDateEditCalendar : DevExpressXtraEditorsControlsDateEditCalendar
   {
    public MyDateEditCalendar(
    DevExpressXtraEditorsRepositoryRepositoryItemDateEdit item
    object editDate) : base (item editDate)
    {
    }
  
    protected override DevExpressXtraEditorsViewInfoDateEditInfoArgs CreateInfoArgs()
    {
    DevExpressXtraEditorsViewInfoDateEditInfoArgs info = baseCreateInfoArgs ();
    SystemGlobalizationDateTimeFormatInfo newFormat =
     (SystemGlobalizationDateTimeFormatInfo)infoDateFormatClone();
  
    // 以下是重新設置日期的周名稱
    // 缺省情況下前面帶有星期兩字也正是因為如此才導致所謂的錯誤
    // 注意當前實現未處理語言環境僅適用於中文環境
    newFormatAbbreviatedDayNames = new string[]{
          
          
          
          
          
          
          };
  
    infoDateFormat = newFormat;
  
    return info;
    }
  
   }
  
  使用時只需 MyDateEdit dateEdit = new MyDateEdit() 就可以了
  

From:http://tw.wingwit.com/Article/program/net/201311/13075.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.