我有一個視圖(在MVVM中)有一些控件包括樹視圖。 ViewModel是數據上下文和模型,一切工作都很好,直到現在。 **我有兩種情況: **視圖控件顯示/隱藏WPF MVVM
- 我希望我的視圖顯示一個ContextMenu對Treeview項目。
- 其他情況下,不應該對樹視圖項顯示文本菜單
這可能與一個視圖或應該有這個目的兩種不同的看法,我個人的工作,如果我會更好有一個視圖。
虛擬機和模型非常簡單,只是具有視圖的綁定屬性。
View.xaml
<UserControl x:Class="SPM.SystemExplorer.View.SystemExplorerView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:SPM.SystemExplorer.View"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300"
xmlns:viewModel="clr-namespace:SPM.SystemExplorer.ViewModel"
xmlns:classes="clr-namespace:SPM.SystemExplorer.Classes">
<UserControl.DataContext>
<viewModel:SystemExplorerViewVM></viewModel:SystemExplorerViewVM>
</UserControl.DataContext>
<Grid>
<StackPanel>
<Label Content="{Binding Test}"></Label>
<TreeView Grid.Row="1" ItemsSource="{Binding SystemProjects}">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type classes:SystemProject}" ItemsSource="{Binding ParticipantProjects}">
<StackPanel Orientation="Horizontal">
<TreeViewItem Header="{Binding NameOfSystemProject}"></TreeViewItem>
<TreeViewItem Header="{Binding AuthorOfSystemProject}"></TreeViewItem>
</StackPanel>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="{x:Type classes:ParticipantProject}">
<StackPanel Orientation="Horizontal">
<TreeViewItem Header="{Binding NameOfParticipantProject}"></TreeViewItem>
<TreeViewItem Header="{Binding AuthorOfParticipantProject}"></TreeViewItem>
</StackPanel>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
</StackPanel>
</Grid>
您可以設置SystemExplorerViewVM以「A」或「B」的屬性和使用數據觸發。 – mm8
請給我一個例子,寫幾行它,我是WPF的初學者。 – Smallestearth
我想我沒有解釋正確的, 我想說的是: 其實我有兩種情況爲我的看法。首先,如果我右擊它,我想看到我的視圖在樹視圖項上有一個contextmenu。第二種情況,我在樹視圖項目上有相同的視圖,但沒有上下文菜單。 – Smallestearth