0
與this相似SO問題,我試圖儘可能輕鬆地調整ComboBoxItems的樣式。但是,我正在基於ComboBox的默認樣式here製作自定義樣式。WPF從樣式中嵌套元素
<Style x:Key="MultiComboBox" TargetType="{x:Type ComboBox}">
<Style.Resources>
<Style TargetType="{x:Type ComboBoxItem}">
<Setter Property="Style" Value="{StaticResource MultiComboBoxItem}"/>
</Style>
</Style.Resources>
<Setter Property="SnapsToDevicePixels" Value="true" />
<!--<Setter Property="OverridesDefaultStyle" Value="true" />-->
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto" />
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
...
...
</Style>
.
.
.
<ComboBox Style="{StaticResource MyComboBox}">
<ComboBoxItem x:Name="First">First</ComboBoxItem>
<ComboBoxItem x:Name="Second">Second</ComboBoxItem>
<ComboBoxItem x:Name="Third">Third</ComboBoxItem>
</ComboBox>
我加入了<Style.Resources>
位頂端,希望只需要在這裏一個參考,而不是將其逐個添加到嵌套元素,甚至需要將其添加到元素擺在首位。另外,我註釋了所有的OverridesDefaultStyle
安裝者。
但是,我得到一個XAMLparseexception,「樣式對象不允許影響它所應用的對象的樣式屬性」。錯誤本身是有道理的,但我認爲,因爲我的目標是ComboBoxItem
它應該工作。有沒有解決的辦法?
謝謝。我在前面的問題中看到,但他們對「ItemContainerStyle」採取行動的方式讓我覺得這不是我的正確答案。謝謝你讓我挺直。只要SO允許,我會盡快接受這個答案。 –
現在我的問題是,我將如何爲StackPanel執行此操作? –
@SanjayCruze,StackPanel究竟應該做什麼? – ASh