CodeGo.net>如何设置选定的项目

我正在尝试设置listpicker控件的值/ selecteditem-从Windows Phone 7的silverlight工具包中(当用户要在xml中编辑条目时,它将数据从IO中拉出并在文本框/ listpickers中进行设置).

我目前正在尝试使用:

ListPickerSub.SelectedItem = sub;

(sub是一个字符串)

但是它抛出了System.InvalidOperationException

Additional information: SelectedItem must always be set to a valid value.

解决方法:

SelectedItem需要一个ListPickerItem(这是列表中的项目之一).您正在传递一个字符串-因此出错.

您可能会发现设置SelectedIndex更容易.

在不知道填充列表内容的情况下,很难给出设置SelectedItem的相关示例.

编辑:
这是一个如何绑定到字符串的示例.如果没有关于您实际绑定到itemsource的可行示例,这是我能做的最好的事情. (仅提供对象名称或部分代码是不够的.)

假设:

<Controls:ListPicker x:Name="ListPickerSub">
    <Controls:ListPicker.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding}" />
        </DataTemplate>
    </Controls:ListPicker.ItemTemplate>
    <Controls:ListPicker.FullModeItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding}" />
        </DataTemplate>
    </Controls:ListPicker.FullModeItemTemplate>
</Controls:ListPicker>

然后,我可以将内容绑定为:

ListPickerSub.ItemsSource = SubItems();


private IEnumerable<string> SubItems()
{
    yield return "monday";
    yield return "tuesday";
    yield return "wednesday";
    yield return "thursday";
    yield return "friday";
    yield return "saturday";
    yield return "sunday";
}

并使用以下命令设置SelectedItem:

ListPickerSub.SelectedItem = "sunday";

相关文章

如何在Silverlight4(XAML)中绑定IsEnabled属性?我试过简单的...
我正在编写我的第一个vb.net应用程序(但我也会在这里标记c#,...
ProcessFile()是在UIThread上运行还是在单独的线程上运行.如...
我从同行那里听说,对sharepoint的了解对职业生涯有益.我们不...
我正在尝试保存一个类我的类对象的集合.我收到一个错误说明:...
我需要根据Silverlight中的某些配置值设置给定控件的Style.我...