c# - 选择项目列表框 C#

标签 c# xaml listbox windows-phone

我正在尝试使用 C# 通过 switch 语句选择列表框中的项目,但没有任何反应:

这是我当前的代码:

XAML

<ListBox x:Name="test" (XAML OMITED) SelectionChanged="test_SelectionChanged">
 <ListBoxItem Content="name 1" />

c#

 private void test_SelectionChanged(object sender,  System.EventArgs e)
    {
        switch (test.SelectedItem.ToString())
        {
            case "name 1":
                MessageBox.Show("X");
                break;
            case "name 2":
                MessageBox.Show("X");
                break;
            default:

                break;
        }

谢谢

最佳答案

列表框是发件人对象,因此您可以像这样访问它。您只需要将发件人转换为列表框,然后您选择的项目是一个列表框项目,这样您就可以转换它,然后您就可以访问内容值。此外,当我创建我的 selectionchanged 事件处理程序时,它接受 SelectionChangedEventArgs e 而不是 System.EventArgs e,SelectionChangedEventArgs 位于 System.Windows.Controls 命名空间中,它应该已经通过 using 语句导入到您的类中。

var mySender = (ListBox)sender;
swtich(((ListBoxItem)mySender.SelectedItem).Content.ToString()){

  case "name 1":
            MessageBox.Show("X");
            break;
  case "name 2":
            MessageBox.Show("X");
            break;
  default:
            break;
}

关于c# - 选择项目列表框 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17789663/

相关文章:

wpf - 覆盖 generic.xaml 中定义的样式

c# - WPF AutoCompleteBox - 如何限制它仅从建议列表中选择?

c# - 如何在 ItemsControl 中实现自定义内联搜索?

C# 显示 Oracle 过程中的自定义错误

c# - 下拉箭头的宽度

C# LINQ xml解析使用 "PreviousNode"

c# - 绑定(bind)到来自两个不同类的属性值

C# Word Interop,将剪贴板粘贴到段落中

c# - 使用新的 COM 端口数据更新列表框

android - 如何以编程方式在 ListBox 项中添加图像?