をあなたはBorder
のスタイルでDataTrigger
を使用することができます。それをのプロパティにバインドします(この場合、私はIsKeyboardFocusWithin
を使用しました)。 ListBox
がフォーカスを失った場合、元の色に戻ります。
<ListBox ItemsSource="{StaticResource MyCollection}" x:Name="list"/>
<Border BorderThickness="2">
<Border.Style>
<Style TargetType="Border">
<Setter Property="BorderBrush">
<Setter.Value>
<SolidColorBrush Color="Aquamarine" />
</Setter.Value>
</Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding IsKeyboardFocusWithin, ElementName=list}" Value="True">
<Setter Property="BorderBrush">
<Setter.Value>
<SolidColorBrush Color="Red" />
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</Border.Style>
<ContentControl Content="{Binding SelectedItem, ElementName=list}"/>
</Border>
出典
2017-05-04 17:56:51
Ada