0

i'm trying to add to my custom Usercontrol (wpf vb.net ) that have a Grid as layout a dropdown menu (delete copy cut) on right click but every attempt i can't find a solution anyone can give me some advice ? I tried to create a treeview but its not what im trying to achieve, because it works only if i right click on it. but i would like to right click everywhere on the usercontrol and open a menu on mouse position is it possible ?

<UserControl x:Class="UCElement"
                     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:FlowChartBuilder"
                     mc:Ignorable="d" 
                     d:DesignHeight="450" d:DesignWidth="800" >
          <Grid x:Name="UCElementGrid">
            <Grid.ColumnDefinitions>
              <ColumnDefinition></ColumnDefinition>
              <ColumnDefinition></ColumnDefinition>
              <ColumnDefinition></ColumnDefinition>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
              <RowDefinition></RowDefinition>
              <RowDefinition></RowDefinition>
              <RowDefinition></RowDefinition>
            </Grid.RowDefinitions>
            </Grid>
        </UserControl>
Ippocampo
  • 1
  • 2

1 Answers1

0

The solution is to explicitly add a ContextMenu control:

     <UserControl x:Class="UCElement"
                             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:FlowChartBuilder"
                             mc:Ignorable="d" 
                             d:DesignHeight="450" d:DesignWidth="800" >
<!-- ADD THIS  -->
              <UserControl.ContextMenu>
                <ContextMenu Name="ContextMenu">
                  <MenuItem  Header="Delete"  Click="DeleteItem" ></MenuItem>
                  <Separator/>
                </ContextMenu>
              </UserControl.ContextMenu>
<!-- END   -->
        
                  <Grid x:Name="UCElementGrid">
                    <Grid.ColumnDefinitions>
                      <ColumnDefinition></ColumnDefinition>
                      <ColumnDefinition></ColumnDefinition>
                      <ColumnDefinition></ColumnDefinition>
                    </Grid.ColumnDefinitions>
                    <Grid.RowDefinitions>
                      <RowDefinition></RowDefinition>
                      <RowDefinition></RowDefinition>
                      <RowDefinition></RowDefinition>
                    </Grid.RowDefinitions>
                    </Grid>
                </UserControl>
Cody Gray - on strike
  • 239,200
  • 50
  • 490
  • 574
Ippocampo
  • 1
  • 2