0
条件に基づいてルートMenuItem
Collapsed
が必要です。ルートメニューではなく、折りたたまれたメニュー項目のサブメニュー項目を取得できます。ルートメニュー項目可視性バインディング
背景:設定に基づいて、私はMenuItems
をVisible
またはCollapsed
にする必要があります。この種の作品。サブMenuItem
では完全に動作します。真と偽の間MySettingの値を変更する
<Menu>
<MenuItem Header="Root Menu Item" >
<MenuItem.Style>
<Style TargetType="{x:Type MenuItem}" >
<Setter Property="Visibility" Value="Visible" />
<Style.Triggers>
<DataTrigger Binding="{Binding Source={StaticResource MyResource}, Path=MySetting, UpdateSourceTrigger=PropertyChanged}" Value="False">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</MenuItem.Style>
<MenuItem Header="Sub Menu Item">
<MenuItem.Style>
<Style TargetType="{x:Type MenuItem}" >
<Setter Property="Visibility" Value="Collapsed" />
<Style.Triggers>
<DataTrigger Binding="{Binding Source={StaticResource MyResource}, Path=MySetting, UpdateSourceTrigger=PropertyChanged}" Value="False">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</MenuItem.Style>
</MenuItem>
</MenuItem>
</Menu>
は、「サブメニュー項目」が消えたり現れになりますが、ルートメニュー項目には影響しません。なぜ私は迷っています。
なぜあなたはちょうどBoolenToVisbilityConverterを使用していませんか? {プロパティの可視性= "{Binidng Path = MySetting、Source = {StaticResource MyResource}、コンバーター= {StaticResource BoolToVisConverter}}" /> –
それはそれを修正しました。これを回答として投稿すると、これを正解とマークします – Xaphann