我怎么能改變這個的默認文本顏色ListView?"text color"默認為黑色,我在屬性視窗(Visual Studio)下找不到選項。
<ListView
Name="LV"
Grid.Row="2"
HorizontalContentAlignment="Stretch"
FocusManager.IsFocusScope="True"
MouseDoubleClick="LV_MouseDoubleClick"
ScrollViewer.ScrollChanged="LV_ScrollChanged" Foreground="White" BorderBrush="#FFABADB3" Background="Black">
<ListView.Resources>
<Style TargetType="{x:Type ListViewItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListViewItem}">
<Border
x:Name="Bd"
Padding="{TemplateBinding Padding}"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
SnapsToDevicePixels="true">
<ContentPresenter
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
</Border>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="Selector.IsSelectionActive" Value="False" />
<Condition Property="IsSelected" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="Bd" Property="Background" Value="#FFFF0080" />
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="Selector.IsSelectionActive" Value="True" />
<Condition Property="IsSelected" Value="True" />
</MultiTrigger.Conditions>
<Setter TargetName="Bd" Property="Background" Value="#FFFF0080" />
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ListView.Resources>
<ListView.ItemTemplate>
<DataTemplate>
<local:TraceEventElement Event="{Binding}" />
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我嘗試了這些選項,沒有一個能夠改變文本顏色:
Foreground="Red"
TextBlock.Foreground="Red"
TextElement.Foreground="Red"
uj5u.com熱心網友回復:
您可以通過DependencyProperty.AddOwner方法TraceEventElement添加Foreground依賴屬性并用 this替換硬編碼來修改類。Brushes.BlackForeground
public class TraceEventElement : FrameworkElement
{
public Brush Foreground
{
get { return (Brush)GetValue(ForegroundProperty); }
set { SetValue(ForegroundProperty, value); }
}
public static readonly DependencyProperty ForegroundProperty =
TextElement.ForegroundProperty.AddOwner(typeof(TraceEventElement));
...
}
然后TextElement.Foreground在 ListView 級別應該可以作業。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/489027.html
上一篇:需要網站上的鏈接和文字
