WPF ListView的右键菜单MenuItem的文本宽度设置
  Fmh2GeNCglWw 2023年11月02日 41 0
<Window.Resources>

        <ControlTemplate x:Key="MenuItemTemplate" TargetType="MenuItem">

            <Grid Width="130"   Height="30" Margin="0">

                <Grid.Style>

                    <Style TargetType="Grid">

                        <Setter Property="Background" Value="Transparent"/>

                        <Style.Triggers>

                            <Trigger Property="IsMouseOver" Value="True">

                                <Setter Property="Background" Value="#c3e0ee"/>

                            </Trigger>

                        </Style.Triggers>

                    </Style>

                </Grid.Style>

                <TextBlock Text="{TemplateBinding Header}" Width="120"   Height="20"  Margin="23,8,0,0"/>

            </Grid>

        </ControlTemplate>
    </Window.Resources>
    
     <ListView.ContextMenu>
          <ContextMenu>
              <MenuItem Header="在上方插入一行"  Template="{StaticResource MenuItemTemplate}"   Command="{Binding AddBeforeRow}" CommandParameter="{Binding PlacementTarget.SelectedIndex,RelativeSource={RelativeSource AncestorType=ContextMenu}}"  Width="150">
              </MenuItem>
              <MenuItem Header="在下方插入一行"  Template="{StaticResource MenuItemTemplate}"  Command="{Binding AddAfterRow}" CommandParameter="{Binding PlacementTarget.SelectedIndex,RelativeSource={RelativeSource AncestorType=ContextMenu}}" Width="150">
              </MenuItem>
              <MenuItem Header="删除当前行" Template="{StaticResource MenuItemTemplate}"  Command="{Binding DeleteCurrentRow}" CommandParameter="{Binding PlacementTarget.SelectedIndex,RelativeSource={RelativeSource AncestorType=ContextMenu}}" Width="150">
              </MenuItem>
           </ContextMenu>
   </ListView.ContextMenu>

 在上面的示例中,我们定义了名为MenuItemTemplate的控件模板,它被应用于每个MenuItem。您可以根据需要在模板中定义自己的布局和样式。然后,我们通过在MenuItem中使用Template="{StaticResource MenuItemTemplate}"来引用该模板。

这样,所有的MenuItem都将共享相同的模板,并且您只需要在一个地方定义和管理它们的外观。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  HekzsAcXJMX5   2023年11月02日   44   0   0 控件关闭按钮
  HekzsAcXJMX5   2023年11月02日   45   0   0 控件Click
  xeLzCLQsmmZ4   2023年11月02日   81   0   0 控件LabVIEW
Fmh2GeNCglWw