行。我放弃。我想在我的一个 Windows Phone 应用程序中使用 ListPicker 控件。我收到一个异常SelectedItem 必须始终设置为有效值。
这是我的 ListPicker 的 XAML 片段:
<toolkit:ListPicker x:Name="CategoryPicker"
FullModeItemTemplate="{StaticResource CategoryPickerFullModeItemTemplate}"
Margin="12,0,0,0"
ItemsSource="{Binding CategoryList}"
SelectedItem="{Binding SelectedCategory, Mode=TwoWay}"
ExpansionMode="ExpansionAllowed"
FullModeHeader="Pick Categories"
CacheMode="BitmapCache"
Width="420"
HorizontalAlignment="Left" />
CategoryList
在ObservableCollection<Category>
我的 ViewModel 中。
SelectedCategory
是我的 ViewModel 中 Category 类型的一个属性。
这就是我声明 CategoryList 和 SelectedCategory 的方式:
private Category _selectedCategory;// = new Category();
private ObservableCollection<Category> _categoryList = new ObservableCollection<Category>();
public ObservableCollection<Category> CategoryList
{
get
{
return _categoryList;
}
set
{
_categoryList = value;
RaisePropertyChanged("CategoryList");
}
}
public Category SelectedCategory
{
get
{
return _selectedCategory;
}
set
{
if (_selectedCategory == value)
{
return;
}
_selectedCategory = value;
RaisePropertyChanged("SelectedCategory");
}
}
感谢你的帮助!!!可能我对 ListPicker 的用法还不是很了解。