如何正确处理ListPicker SelectionChanged事件?

时间:2013-08-28 16:14:22

标签: c# windows-phone-8 selectionchanged listpicker

大家好,大家好。我有以下问题:

我有一个listpicker,在XAML中声明了x:Name =“Backgroundlist”,它运行正常。

其项目声明如下:

public MainPage()
{
    InitializeComponent();
    Backgroundlist.Items.Add("photo");
    Backgroundlist.Items.Add("Bing");               
}

但是,以下代码无法正常工作(即它不显示MessageBox):

private void Backgroundlist_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    if (Backgroundlist.SelectedItem.Equals("photo"))
    {   
        MessageBox.Show("photo");
    }
    if (Backgroundlist.SelectedItem.Equals("Bing"))
    {
        MessageBox.Show("Bing");
    }
}

似乎有什么问题?谢谢!

P.S。我没有异常

1 个答案:

答案 0 :(得分:2)

确定。所以这是交易。我还必须在XAML中声明SelectionChanged="Picker"。这是完整的代码:

<toolkit:ListPicker x:Name="Backgroundlist" Header="Background" SelectionChanged="Picker" ExpansionMode="FullscreenOnly" />

public MainPage()
        {
            InitializeComponent();
            Backgroundlist.Items.Add("photo");
            Backgroundlist.Items.Add("Bing");
        }

        private void Picker(object sender, SelectionChangedEventArgs e)
        {
            var picker = sender as ListPicker;
            MessageBox.Show(picker.SelectedItem.ToString());
        }

最后一切都证明是非常原始的)