2012-04-02 21 views
0

A ListBox и aContextMenu создаются динамически. У ListBox есть несколько предметов. Как узнать ListBoxItemText, на который нажата правая кнопка мыши?WPF contextMenu click issue

private void Init2() 
{ 
    ContextMenu contextMenu = new ContextMenu(); 

    MenuItem menuItemOpen = new MenuItem(); 
    menuItemOpen.Click += new RoutedEventHandler(menuItemOpen_Click); 
    contextMenu.Items.Add(menuItemOpen); 
    listBox1.ContextMenu = contextMenu; 
} 
void menuItemOpen_Click(object sender, RoutedEventArgs e) 
{ 
    //How do I know the listItem text that right mouse button clicked on? 
} 

ответ

1

Когда вы щелкните правой кнопкой мыши, вы на самом деле также выберите. Таким образом, это означает, что вы можете просто сделать:

private void MenuItem_Click(object sender, RoutedEventArgs e) 
    { 
     string selectedListBoxItemText = ((ListBoxItem)listBox1.SelectedItem).Content.ToString()); 

     // do your thing 
    } 
+0

Как это помогает мне узнать текст ListBoxItem? –

+0

Извините, неправильно прочитайте проблему. Будет обновлен ответ. –