如何在WPF中自定義控制項 選擇繼承的基類

2022-03-31 12:17:56 字數 1130 閱讀 9216

在wpf中需要自定義控制項,首要要選擇需要繼承的基類

frameworkelement

這是常用的最低階的基類。通常,只有當希望重寫onrender()方法並使用drawingcontext從頭繪製內容時,才會繼承該類。

control

當從頭開始建立控制項時,這是最常用的起點。該類是所有使用者互動小組件的基類。control類新增了用於設定背景、前景、字型和內容對齊方式的屬性。控制項類還為自身設定了tab順序(通過istabstop屬性),並且引入 了滑鼠雙擊功能(mousedoubleclick和previewmousedoubleclick)。但最重要的是,control類定義了template屬性。

contentcontrol

這是能夠顯示任意單一內容的控制項的基類。顯示的內容可以是元素或結合使用模版的自定義物件(內容通過content屬性設定,並且可以通過contenttemplate屬性提供可靠的模板)

usercontrol

這是可使用設計檢視進行配置的內容控制項。儘管使用者控制項和普通的控制項是不同的,但當希望在多個視窗中快速重用使用者介面中的不變模組時(而不是建立真正的能在不同應用程式之間轉移的獨立控制項),通過就使用該基類

itemscontrolselector

itemscontrol是封裝列表控制項的基類,但不支援選擇,而selector類是支援選擇的控制項的更具體類。建立自定義控制項時不經常使用這些類,可以使用listbox,listview,treeview等控制項的datatemplate來實現

panel

該類是具有邏輯控制項的基類。布局控制項能夠包含多個子元素,並根據特定的布局語義安排這些子元素。通常,面板提供了用於設定子元素的附加屬性,配置如何安排子元素

decorator

提供在單個子元素(如 border 或 viewbox)上或周圍應用效果的元素的基類。

元素和控制項基類繼承關係圖

WPF自定義控制項(四) 自定義控制項

原文 wpf自定義控制項 四 自定義控制項 在實際工作中,wpf提供的控制項並不能完全滿足不同的設計需求。這時,需要我們設計自定義控制項。這裡lz總結一些自己的思路,特性如下 下面舉例說說在專案中我們經常用到調音台音量條,寫乙個自定義控制項模擬調音台音量條。自定義控制項singnallight,實現...

WPF控制項自定義事件

第一步 定義乙個委託,委託屬於乙個定義,是和類 介面類似的,通常放在外部 輕提示事件委託 public delegate void sendmessageeventhandle string text 第二步 定義乙個sendmessageeventhandle型別事件,事件屬於類的成員,所以要放在...

Wpf 自定義控制項 1

1.新建乙個wpf工程,在工程下面新建 乙個資料夾themes,在themes下新建兩個資源字典檔案generic.xaml和prettyseekbar.xaml generic.xaml resourcedictionary xmlns xmlns x resourcedictionary.mer...