2010-04-23 58 views
0

我有一個數據網格,並且某些列需要包含鏈接到詳細信息窗口的文本。所以,爲了讓自己更容易一些,我創建了一個UserControl,它基本上是一個帶有包含TextBlock的控件模板的Button(我可以用其他方法做到這一點,我知道,但是我想到了按鈕已經公開了Click事件,爲什麼不呢?)。但是,當談到造型時,事情變得有點多毛:我想給文本一個「超鏈接」格式 - 藍色文本,下劃線 - 這樣就很清楚它們是鏈接(也是這樣,它們類似於在我重新實現的傳統WinForms應用程序中進行格式化)。但我也希望能夠對文本進行樣式設置 - 理想情況下,如果在父級單元格中設置文本顏色樣式,它應該獲取文本顏色等內容。在自定義WPF控件中繼承樣式

基本上,有沒有一種簡單的方法來實現一個自定義UserControl,它將a)從父元素中獲取樣式,b)以低優先級應用其默認樣式,即只應用特定樣式(如果尚未一套來自父母?我知道我可以通過綁定手動傳遞父類的樣式,但我想知道是否有更簡單的方法。

回答

0

聽起來您需要爲此創建一個真正的Control或ContentControl實現,以便您可以覆蓋真實的樣式和模板。

UserControls不是真正的stylable,除非你開始以某種方式創建綁定樣式的自定義屬性..但沒有一個是隱含的。