Я пытаюсь сделать довольно простую вещь в своем приложении WPF, или, по крайней мере, я думаю, что это просто.
У меня есть окно, которое содержит свойство int в коде позади. Давайте назовем это IntProperty. Окно реализует интерфейс INotifyPropertyChanged, а IntProperty запускает уведомление об изменении. Это выглядит так:
public int IntProperty
{
get
{
return intProperty;
}
private set
{
if (value != intProperty)
{
intProperty = value;
NotifyPropertyChanged("IntProperty");
}
}
}
В файле xaml я определил прямоугольник с указанным цветом, заданным в свойстве Fill.
<Rectangle x:Name="MyRectangle" Fill="Red" Width="100" Height="5" Margin="3,0,0,0" VerticalAlignment="Center" />
Теперь я хочу установить свойство Fill в зависимости от значения IntProperty.
Я ищу несколько простых строк xaml, которые вызывают это изменение.
Это должно выглядеть так (AppWindow - это имя окна):
<Rectangle x:Name="MyRectangle" Fill="Red" Width="100" Height="5" Margin="3,0,0,0" VerticalAlignment="Center">
<Rectangle.Triggers>
<Trigger SourceName="AppWindow" Property="IntProperty" Value="1">
<Setter TargetName="MyRectangle" Property="Fill" Value="Green" />
</Trigger>
</Rectangle.Triggers>
Есть ли простой способ сделать это? До сих пор я не мог найти никакого простого решения этого. Буду признателен, если кто-нибудь укажет мне правильное направление.
Спасибо!