ListPicker的问题“SelectionMode = Multiple”

时间:2011-12-04 20:56:05

标签: c# silverlight-toolkit windows-phone-7.1

我使用“Sys:String”,“ViewModel”和&amp ;;定义了ListPicker的项目。 ListPickerItem“但在所有三种情况下,我都无法使用ListPicker中选择的多个项目。

XAML代码:

<toolkit:ListPicker x:Name="ListPicker1" Margin="0" Header="listpicker1" Width="422" SelectionMode="Multiple" FullModeHeader="Top Stories" SelectionChanged="ListPicker1_SelectionChanged">
                            <sys:String>abc</sys:String>
                            <sys:String>def</sys:String>
                            <sys:String>ghi</sys:String>
                            <sys:String>jkl</sys:String>
                        </toolkit:ListPicker>

C#代码

private void ListPicker1_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
        {
            foreach (ListPicker item in ListPicker1.Items)
            {
                if (item.ToString() == "abc")
                {
                    MessageBox.Show(item.ToString());
                }
            }
        }

我想将listpicker的所选项目作为字符串。

我还面临另一个问题,当页面加载时,listpicker selectiochanged事件正在发生。

1 个答案:

答案 0 :(得分:0)

您应该使用SelectedItems属性来获取列表中的所选项目:

    private void ListPicker1_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        foreach (ListPicker item in ListPicker1.SelectedItems)
        {
             MessageBox.Show(item.ToString());
        }
    }

另外,看一下SelectionChangedEventArgs类,它包含当前选择事件中已选择或取消选择的项目。