在运行时更新 UWP 组合框
Updating a UWP combobox at runtime
我有一个 UWP 组合框,它绑定到 xaml 代码中的项目源。它可以正常工作,但是,我希望它随着新项目的添加而更新。我知道在 WPF 中我们可以使用 refresh() 方法来实现这一点。 UWP中有类似的东西吗?
我试过在实现更改时调用 itemsource 的加载方法,但这没有达到预期的结果。基本上,用户通过文本输入可以添加一个项目,然后通过更新查询在数据库中更新该项目。只是补充一点,更改会在应用程序重新启动时显示,但不会在运行时显示。非常感谢任何帮助。
我的问题是使用列表
List<ComboModel> model = new List<ComboModel>();
我将上面的更改为一个 Observable 集合
ObservableCollection<ComboModel> model = new ObservableCollection<ComboModel>();
最后,在用户使用输入添加项目并在数据库中进行更改后,我成功地重新加载了 Combobox 项目源。
Ability.ItemsSource = dbDetail.GetComboData("Ability");
基本上,问题出在使用 List 而不是 Observable Collection。 List 似乎没有更新,因为它没有看到与实现 INotifyCollectionChanged 的 Observable 集合相反的变化。
我有一个 UWP 组合框,它绑定到 xaml 代码中的项目源。它可以正常工作,但是,我希望它随着新项目的添加而更新。我知道在 WPF 中我们可以使用 refresh() 方法来实现这一点。 UWP中有类似的东西吗?
我试过在实现更改时调用 itemsource 的加载方法,但这没有达到预期的结果。基本上,用户通过文本输入可以添加一个项目,然后通过更新查询在数据库中更新该项目。只是补充一点,更改会在应用程序重新启动时显示,但不会在运行时显示。非常感谢任何帮助。
我的问题是使用列表
List<ComboModel> model = new List<ComboModel>();
我将上面的更改为一个 Observable 集合
ObservableCollection<ComboModel> model = new ObservableCollection<ComboModel>();
最后,在用户使用输入添加项目并在数据库中进行更改后,我成功地重新加载了 Combobox 项目源。
Ability.ItemsSource = dbDetail.GetComboData("Ability");
基本上,问题出在使用 List 而不是 Observable Collection。 List 似乎没有更新,因为它没有看到与实现 INotifyCollectionChanged 的 Observable 集合相反的变化。