【发布时间】:2017-04-29 14:39:17
【问题描述】:
我正在为自己创建一个简单的 UWP 应用程序,但对绑定和所有这些东西的工作原理缺乏了解。不知道怎么解释更好所以我创建了一个简单的例子:https://gist.github.com/anonymous/744dc688d0663a3c14b7a2fc424316f8
程序在主屏幕上有一个可选项目列表。我可以选择几个项目,按一个按钮,程序将显示带有选定项目的新浮动面板(我在我的原始程序中进一步管理这些项目)。我希望这个面板成为单独的控件,因为我的 MainPage 已经被代码填满了。
问题是。当我第一次单击按钮时 - 它按我的预期工作。但是,当我更改所选项目并再次单击按钮时,它会显示面板,其中包含第一次选择的项目。
我的问题是 - 如何让它发挥作用?我有一种感觉,它必须是 INotifyPropertyChanged 的东西,但无法理解。
我也很高兴听到总体建议。我不是 c# 开发人员。我其实是系统。管理员,但我对 python 了解一点,我在大学学习了 Delphi 7。所以我在创建这个应用程序的过程中学习了 c#。
UPD:如果我将SelectedItemsView.xaml的第28行从
ItemsSource="{x:Bind SelectedItems}"
到
ItemsSource="{Binding SelectedItems, ElementName=SelectedItemsViewRoot}"
(并将x:Name="SelectedItemsViewRoot" 添加到用户控件属性中)。它根据需要工作。所以新的问题来了——这是正确的方法吗?我认为Binding 是一种遗留物,x:Bind 是应该在新应用中使用的更新方法。
【问题讨论】:
标签: c# xaml user-controls uwp