user896692
user896692

Reputation: 2371

Get Text of a ContextMenu.ItemsSource generated MenuItem in WPF

I´ve got a Click-method of a MenuItem in a ContextMenu. In this method, I need the text of the item I´ve clicked.

Here´s the code:

private void menuItemKostenstellen_Click(object sender, RoutedEventArgs e) { }

I already tried with e.Source but that didn´t work.

How can I get this?

Upvotes: 0

Views: 1893

Answers (3)

Amit
Amit

Reputation: 939

Use following:

<ContextMenu Name="conKostenstelle" >
 <MenuItem Header="Kostenstellen" Name="menuItemKostenstellen">
    <MenuItem.ItemContainerStyle>
        <Style TargetType="{x:Type MenuItem}">
            <EventSetter Event="Click" Handler="MenuItem_Click" />
        </Style>
    </MenuItem.ItemContainerStyle>

 </MenuItem>
</ContextMenu>

 LinkedList<String> kliste = kosrep.GetKostenstellen();

menuItemKostenstellenunter.ItemsSource = kliste;

Upvotes: 1

LPL
LPL

Reputation: 17063

Use ItemContainerStyle Property for Click Event on all MenuItems

<ContextMenu>
    <ContextMenu.ItemContainerStyle>
        <Style TargetType="{x:Type MenuItem}">
            <EventSetter Event="Click" Handler="MenuItem_Click" />
        </Style>
    </ContextMenu.ItemContainerStyle>
</ContextMenu>

Upvotes: 0

Haris Hasan
Haris Hasan

Reputation: 30097

try this

private void menuItemKostenstellen_Click(object sender, RoutedEventArgs e)
        {
            MenuItem mi = sender as MenuItem;
            string title = mi.Header.ToString();
        }

Upvotes: 1

Related Questions