У меня есть TreeView, используя следующий стиль:WPF, TreeViewItem, как не показывать contextMenu в зависимости от свойства зависимостей?
<HierarchicalDataTemplate x:Key="itemTemplate" DataType="{x:Type AttCatalog:AttachmentCatalogModel}" ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Name}" Tag="{Binding Guid}">
<TextBlock.ContextMenu>
<ContextMenu>
<MenuItem Header="New Item"/>
<MenuItem Header="Move to..." />
<MenuItem Header="Delete" />
</ContextMenu>
</TextBlock.ContextMenu>
</TextBlock>
</HierarchicalDataTemplate>
<TreeView x:Name="tree" HorizontalAlignment="Left" Width="216" BorderThickness="0,0,1,0" Background="#FFFBFBFB" IsEnabled="{Binding IsEnabled}" ItemsSource="{Binding Catalogs}" ItemTemplate="{StaticResource itemTemplate}" TreeViewItem.Expanded="OnExpandItemHandler" Margin="0,0,0,241" SelectedItemChanged="tree_SelectedItemChanged">
вы можете увидеть TextBlock Tag связывания свойства Guid, мой вопрос, как это сделать, когда этот Guid пуст (00000-00000000-00000), не показать контекстМеню?
Добавить триггер в TextBlock.Trigger, который проверяет свойство тега на null и устанавливает его ContextMenu в null. Или также вы можете использовать конвертер, который будет привязан к ContextMenu. –