繁体   English   中英

如何在gridCell中使用ContextMenu?

[英]How to using from ContextMenu in a gridCell?

我有一个这样的CustomControl:

        <Button Name="b"  Height="20" Click="b_Click"  Content="operation" Width="60">
         <Button.ContextMenu> 
             <ContextMenu>

                <MenuItem Header="Copy"></MenuItem>
                <MenuItem Header="cut"></MenuItem>
                <MenuItem Header="delete"></MenuItem>
            </ContextMenu>
         </Button.ContextMenu> 

        </Button>

在CodeBehind ia中:

   if (b.ContextMenu != null && b.ContextMenu.IsOpen == false)
               {
                    b.ContextMenu.PlacementTarget = b;
                    b.ContextMenu.Placement = System.Windows.Controls.Primitives.PlacementMode.Bottom;
                   ContextMenuService.SetPlacement(b, System.Windows.Controls.Primitives.PlacementMode.Bottom);
                   b.ContextMenu.IsOpen = true;//I have error in this Line
                }

我在DataGrid单元中的控制中使用...当我单击按钮时,此行出现错误

 b.ContextMenu.IsOpen = true;

“ ContextMenu”不能具有逻辑或可视父级

我该如何解决这个问题

一个可运行的应用程序示例,希望它能为您提供所需的提示...

<DataGrid Margin="0,0,195,72" x:Name="A"> 
            <DataGrid.Resources>
                <ContextMenu x:Key="ContextMenu">
                    <MenuItem Header="Copy" Click="MenuItem_Click"></MenuItem>
                    <MenuItem Header="cut" Click="MenuItem_Click"></MenuItem>
                    <MenuItem Header="delete" Click="MenuItem_Click"></MenuItem>
                </ContextMenu>
            </DataGrid.Resources>

            <DataGrid.CellStyle>
                <Style TargetType="{x:Type DataGridCell}">
                    <Setter Property="ContextMenu" Value="{StaticResource ContextMenu}">
                                           </Setter>
                </Style>
            </DataGrid.CellStyle>
            <DataGrid.Columns>
                <DataGridTextColumn Header="A" Binding="{Binding}">

                </DataGridTextColumn>
            </DataGrid.Columns>
        </DataGrid>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM