0

我已爲我的應用程序中的所有ListBox創建了一個ListItems樣式。我可以像這樣手動設置這些:爲應用程序中的所有ListItems設置樣式,即使是模板化控件中的那些樣式

<ListBox ItemContainerStyle=""> 

但我遇到麻煩風格應用到我的應用程序的每一個列表框而不觸及每一個將上述屬性。

此外,更重要的是,我想將樣式應用到自定義模板控件中使用的列表框。現在我必須修改控制庫中的Generic.xaml主題...不是我認爲我應該做的事情。

相當確定這與主題有關,btu有一段時間計算出來。

回答

1

你可以使用隱式樣式。 http://www.silverlightshow.net/items/Implicit-Styles-in-Silverlight-4.aspx
您爲某個類型定義了一個全局樣式(在您的情況下爲ListBoxItem),然後該樣式是您的應用的新默認樣式。

如果您需要更多信息,請發表評論。

BR,

TJ

+0

認真嗎?我一直在狩獵,而我所要做的只是從風格中刪除我的鑰匙? GRRRR ....謝謝TJ,修復它。 – 2010-12-03 17:44:00

2

您可以在Silverlight 4

定義你的風格以常規方式與implicit styles做到這一點:

<Style x:Key="DefaultListBoxStyle" TargetType="ListBox"> 
    .... 
<Style> 

然後創建隱式風格:

<Style TargetType="ListBox" 
     BasedOn="{StaticResource DefaultListBoxStyle}" /> 
+0

這是隱式樣式的更好模式。這樣您就可以創建基於默認樣式的其他自定義樣式。如果您只是創建一個沒有密鑰的單一樣式,就沒有辦法做到這一點。 – 2010-12-03 18:11:10

相關問題