我在几页上搜索过并找到了几篇关于这个主题的文章,但我似乎仍然无法知道遗漏了什么。 我的代码只显示第一个列表框的条目。当我单击它时,我从数据库中获取数据,但是第二个列表框中没有显示任何内容。 (顺便说一下,我使用PRISM框架)。有人能给我一个暗示吗?
XAML:
<ListBox ItemsSource="{Binding GroupList}" SelectedItem="{Binding SelectedGroup}" SelectedValue="ID" DisplayMemberPath="BEZ" HorizontalAlignment="Left"/>
<ListBox ItemsSource="{Binding FoodList}" DisplayMemberPath="BEZ"/>
我的观点模型:
public class FoodViewModel : BindableBase
{
private FOODGROUP _selectedGroup;
public FOODGROUP SelectedGroup
{
get { return this._selectedGroup; }
set
{
SetProperty(ref this._selectedGroup, value);
GetFoodByGroup(SelectedGroup.ID);
}
}
public ObservableCollection<FOODGROUP> GroupList { get; set; }
public ObservableCollection<FOOD> FoodList{ get; set; }
public FoodViewModel()
{
GroupList = new ObservableCollection<FOODGROUP>(FoodController.GetGroups());
}
private void GetFoodByGroup(long groupId)
{
FoodList = new ObservableCollection<FOOD>(FoodController.GetFoodList(groupId));
}
}
答案 0 :(得分:0)
替换此行:
public ObservableCollection<FOOD> FoodList{ get; set; }
通过这个
private ObservableCollection<FOOD> _foodList;
public ObservableCollection<FOOD> FoodList
{
get
{
return _foodList;
}
set
{
SetProperty(ref this._foodList, value);
}
}