日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

WPF- 关于自定义Calendar控件

發布時間:2023/12/10 asp.net 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WPF- 关于自定义Calendar控件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

由于項目對更改日期 時間的需要,接觸了一下Calendar控件。結果發現在這么強大的控件的背后,微軟其實并沒有為開發人員留有很強的擴展性。

(項目要求的Calendar控件能對一些特定的日期進行特殊處理,如高亮,以及類似于Outlook的Calendar一樣,可以編輯會議,提醒什么的。)

Calendar里有一些控件如:CalendarItem,CalendarButton,CalendarDayButton。這些控件都被定義成了sealed。所以當我們要對Calendar控件做一些自定義的時候,我們就不能按照對待普通的其他控件的方式對待它(常規做法是我們創建一個控件,然后繼承我們需要自定義的控件,為其添加一些依賴屬性什么的。。)。 所以剩下的解決方案是

1.創建一個擴展性更強的Calendar控件。

2.使用Converter處理。

對于方案1,那肯定是吃力不討好,Calendar控件本身相當的復雜,自己創建一個類似的控件費時費力,而且肯定不免有許多Bug。因此剩下的我們最好是使用方案2(Charles Petzold在MSDN雜志中有一篇文章講的就是這個,請參考:Customizing the New WPF Calendar Controls)。

對于方案2. 我現在是在Converter中定義了一些屬性(一個DateTime的集合,一個String的集合),然后在上面提及的Sealed的控件的Template中通過Converter做一些處理。

?

有關Calendar控件的擴展,Codeproject上有一些文章,參考:

rudigrobler??Creating an Outlook?Calendar?using?WPF 系列

David Veeneman?的?Extending the?WPF?Calendar?Control

?

?

?

?

轉載于:https://www.cnblogs.com/iwpf/p/3714617.html

總結

以上是生活随笔為你收集整理的WPF- 关于自定义Calendar控件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。