wpf – SelectedItem,SelectedValue和SelectedValuePath之间的差异

wpf – SelectedItem,SelectedValue和SelectedValuePath之间的差异,第1张

概述以下各项之间的区别是什么: > SelectedItem > SelectedValue > SelectedValuePath 所有这些依赖属性都在Selector类中定义。我经常混淆SelectedItem与SelectedValue和SelectedValue与SelectedValuePath。 我想知道它们之间的区别,以及我们什么时候使用它们,特别是SelectedValue和Selec 以下各项之间的区别是什么:

> SelectedItem
> SelectedValue
> SelectedValuePath

所有这些依赖属性都在Selector类中定义。我经常混淆SelectedItem与SelectedValue和SelectedValue与SelectedValuePath。

我想知道它们之间的区别,以及我们什么时候使用它们,特别是SelectedValue和SelectedValuePath。请用一些简单的例子解释它们的用法。

解决方法 他们的名字可能有点混乱:)。这里是一个总结:

> SelectedItem属性返回您的列表绑定到的整个对象。所以说你已经将一个列表绑定到一个category对象的集合(每个category对象都有name和ID属性)。例如。 ObservableCollection。 SelectedItem属性将返回当前选择的category对象。但是,对于绑定目的,这并不总是你想要的,因为这只能让你绑定整个类对象到列表绑定到的属性,而不是该类对象上的单个属性的值(如其ID属性)。
>因此,我们有SelectedValuePath属性和SelectedValue属性作为一种替代的绑定手段(您使用它们彼此联合)。让我们假设你有一个Product对象,你的视图绑定到(包含Productname,Weight等东西的属性)。我们还假设您在该Product对象上有一个categoryID属性,并且您希望用户能够从类别列表中为产品选择一个类别。您需要将类别对象的ID属性分配给Product对象的categoryID属性。这是SelectedValuePath和SelectedValue属性的来源。你指定category对象的ID属性应该被赋值给Product对象的属性,列表使用SelectedValuePath =’ID’绑定到它,然后绑定SelectedValue属性到DataContext上的属性(即Product)。

下面的示例演示了这一点。我们有一个ComboBox绑定到一个类别列表(通过ItemsSource)。我们将产品上的categoryID属性绑定为所选值(使用SelectedValue属性)。我们通过SelectedValuePath属性将它与类的ID属性相关联。我们说的只是在ComboBox中显示name属性,使用displayMemberPath属性)。

<ComboBox ItemsSource="{Binding CategorIEs}"           SelectedValue="{Binding categoryID,Mode=TwoWay}"           SelectedValuePath="ID"           displayMemberPath="name" />

这是一个有点混乱最初,但希望这使它有点清晰… 总结

以上是内存溢出为你收集整理的wpf – SelectedItem,SelectedValue和SelectedValuePath之间的差异全部内容,希望文章能够帮你解决wpf – SelectedItem,SelectedValue和SelectedValuePath之间的差异所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1009080.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存