最近在做WPF方面的內容,由於好多屬性不太了解,經常想當然的設置,經常出現自己未意料的問題,所以感覺得梳理下。
ps:先補下常用控件的類結構,免得亂了
.NET Framework 4.5
Using System.Windows.Controls;
這樣就很清楚了,先總結下FrameworkElement 類:
“為 Windows Presentation Foundation (WPF) 元素提供 WPF 框架級屬性集、事件集和方法集。 此類表示附帶的 WPF 框架級實現,它是基於由 UIElement 定義的 WPF 核心級 API 構建的。” From Msdn
只列一些本人不太熟的常用屬性。
AllowDrop:能否用作拖放操作的目標
Clip:定義元素內容輪廓的幾何圖形(就是設定一個shape來作為窗口顯示當前控件,制作非矩形的控件時可能會用到)
ClipToBounds:該值指示是否剪切此元素的內容使其適合包含元素的大小
CacheMode:獲取或設置 UIElement 的緩存表示形式。當需要對呈現內容很耗時的內容提高性能時,設置 CacheMode 屬性。有關詳細信息,請參閱 BitmapCache。(沒用過的就直接抄msdn了,下同)
BindingGroup:用於驗證一個對象的多個屬性的值。
CommandBindings:獲取與此元素關聯的 CommandBinding 對象的集合。 CommandBinding 為此元素啟用命令處理,並聲明命令、命令的事件和由此元素附加的處理程序之間的鏈接。
DesiredSize:獲取此元素在布局過程的測量處理過程中計算的大小。
Dispatcher:獲取與此 DispatcherObject 關聯的 Dispatcher。(調度器...不懂)
ForceCursor:強制光標在位於此元素(包括所有子元素)上時的呈現使用光標的當前 Cursor 設置
IsHitTestVisible:聲明此元素是否可以作為其呈現內容的某部分的命中測試結果返回。(如果為false,該控件無法響應各種事件)
IsManipulationEnabled:該值指示是否對此 UIElement 啟用操作事件。
LogicalChildren:獲取此元素的邏輯子元素的一個枚舉器。 可以循環訪問子元素。
Tag:獲取或設置任意對象值,該值可用於存儲關於此元素的自定義信息。
SnapsToDevicePixels:決定呈現元素期間是否應使用設備特定的像素設置。(對於運行在大於 96 每英寸點數 (dpi) 的設備,設置該屬性為true可以最小化在單一實線附近出現的抗鋸齒視覺瑕疵)
UseLayoutRounding:獲取或設置一個值,該值指示在布局過程中是否應該對此元素的大小和位置應用布局舍入。(當邊緣處於設備像素中間時,在像素邊界上繪制對象會消除抗鋸齒生成的半透明邊緣。)
網絡受限,其他屬性就不列了,列出來就發布不了了...