У меня есть два элемента управления в сетке, эллипс и всплывающее окно. Идея состоит в том, что оба элемента управления отображаются, только если свойство IsDirty в модели представления имеет значение true; если это так, то Ellipse будет зеленым, если та же модель представления IsValid, и красным, если нет, а всплывающее окно отображает сообщения, если пользователь наводит курсор мыши на всплывающее окно.
Содержимое и привязки для всплывающего окна правильные, поэтому мне интересно, смогу ли я контролировать, является ли он IsOpen или нет, используя триггер в своем собственном стиле, как в коде ниже.
Приветствия
Berryl
<Popup x:Name="dirtyPopup" AllowsTransparency="True" >
<Popup.Style>
<Style TargetType="Popup">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="IsOpen" Value="{Binding IsDirty}"/>
</Trigger>
</Style.Triggers>
</Style>
</Popup.Style>
<Grid content goes here />
</Popup>