1
我有一個綁定到ViewModel的TabControl。我想設置產生的TabPanel汽車的利潤率,但我不能這樣做,因爲我覺得風格是通過的TabControl的實現在線設置......如何覆蓋xaml中的內聯樣式
這是我的風格。
<TabControl.Resources>
<Style TargetType="{x:Type TabPanel}">
<Setter Property="Margin" Value="14,0,0,0" />
</Style>
</TabControl.Resources>
和使用Visual Studio的Live物業Explorer是這樣產生的風格。
更新1:
這是XAML
的ItemTemplate裏產生TabPanel
本身:
<TabControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition MaxWidth="150" />
</Grid.ColumnDefinitions>
<Image Grid.Row="0" Grid.Column="0" Source="{Binding ImageUri}"
Height="25" Width="35" Margin="0,0,0,10" />
<TextBlock Grid.Row="1" Grid.Column="0" Text="{Binding TestName}" TextAlignment="Center"
TextWrapping="Wrap" FontFamily="Open Sans" FontWeight="Regular" FontSize="14" />
</Grid>
</DataTemplate>
</TabControl.ItemTemplate>
採取感謝您的答覆。它通過很小的調整解決了我的問題,但是對於這個問題沒有更簡單的解決方案嗎?像CSS中的'!important'一樣。我想應該有一個。 –
@NaveedButt AFAIK,WPF樣式與CSS樣式不同。它們並不是真正級聯的,所以只有**一個**樣式一次被應用到元素,並且它不應該有衝突的屬性。 !在CSS中重要的是在級聯時使用,以在發生衝突時提供最大的權重。儘管如此,您可能會擁有一個** [優先](https://msdn.microsoft.com/en-us/library/ms743230.aspx)**問題,就像您現在所做的那樣,並且wpf只需遵循鏈接。順便說一句,** [這裏](http://stackoverflow.com/q/16008484/5246145)**是一個類似的問題,但我不認爲tecnique更好 – 3615