一、菜单编写
不要使用listbox,listbox只有selectchanged事件,没有点击事件,会导致,点相同菜单没有触发事件的情况
1、引用部分增加“Name="frmWorkstation" ”
2、绑定command时候,必须写成<Button Command="{Binding DataContext.AddTabItemCommand,ElementName=frmWorkstation}" CommandParameter="{Binding Param}",否则ItemTemplate的DataContext指代不明,需要改为父类的DataContext。
-
<ItemsControl ItemsSource="{Binding MenuList}">
-
<ItemsControl.ItemTemplate>
-
<DataTemplate>
-
<Button Command="{Binding DataContext.AddTabItemCommand,ElementName=frmWorkstation}" CommandParameter="{Binding Param}" Padding="0" BorderThickness="0" Width="168" Height="35" HorizontalContentAlignment="Left" Background="Transparent" Cursor="Hand">
-
-
<DockPanel >
-
<Image Width="16" Height="16" Source="{Binding Icons}"/>
-
<TextBlock Margin="6,0,0,0" Text="{Binding Title}"/>
-
</DockPanel>
-
</Button>
-
</DataTemplate>
-
</ItemsControl.ItemTemplate>
-
</ItemsControl>
WPF 菜单事件绑定 DataTemplate下button Command事件绑定 DataTemplate遍历实体数据