绑定selectedItem还是SelectedIndex更好

本文关键字:更好 SelectedIndex 还是 selectedItem 绑定 | 更新日期: 2023-09-27 18:19:32

通常,当我的视图中有一个datagid时,在我的视图模型中,我有一个属性来绑定SelectedIndex,当我在数据网格中选择一个项目时,数据网格会通知这个属性。

但是,我注意到,如果我将数据网格缩短一列,那么数据网格通知的selectedIndex就不是该项在具有该视图项的视图模型的observableCollection中的正确位置。这是因为数据网格通知了短接元素的位置,但视图模型在observableCollection中有原始顺序,那么如果在我的视图模型中尝试使用selectedIndex来选择observaleCollection中的元素,我会得到一个不是预期的项。

如果我使用selectedItem,我就没有这个问题,因为在视图模型中,我有一个属性,它总是包含数据网格所说的被选中的项,无论位置如何。

那么,我的目标是如何在我的视图模型中获得正确的selectedItem,并且我有两个选项,使用selectedIndex和selectedItem。在我描述了问题之后,我不知道什么时候使用selectedIndex而不是selectedItem会有用。

我的一般问题是,何时使用selectedIndex,何时使用SelectedItem?

绑定selectedItem还是SelectedIndex更好

这两种情况都是可以接受的,使用它们取决于您的情况。

更多详细信息:绑定SelectedItem与SelectedIndex-我什么时候应该选择一个而不是另一个?