无法设置数据绑定列表框的选定列表索引属性,原因
本文关键字:列表 索引 属性 原因 设置 数据绑定 | 更新日期: 2023-09-27 18:30:50
我避免问这个问题,但无法设置列表框的选定索引。我已经阅读了其他线程并应用了设置,但它不起作用。
<ListBox ItemsSource="{Binding}"
HorizontalAlignment="Right"
Name="lstReading" Height="Auto"
SelectedIndex="{Binding BookmarkSelectedIndex}">
在 something.xaml.cs 中,我是设置
lstReading.DataContext = IQText;
其中,IQText 是一个IEnumerable<dictIQ>
,包括BookmarkSelectedIndex
作为数据元素。可以使用 IQText 中的其他数据元素,但无法设置 listindex。有人可以告诉我为什么吗?
你在dictIQ
类里面有BookmarkSelectedIndex
吗?因此,每个项目都有一个BookmarkSelectedIndex
,而不是每个集合!
您可以在dictIQ
之外创建单独的属性BookmarkSelectedIndex
,也可以创建从ObservalbeCollection<dictIQ>
继承并具有其他属性BookmarkSelectedIndex
的类:
public class CollectionWithIndex: ObservalbeCollection<dictIQ>
{
public int BookmarkSelectedIndex { get; set; }
}
希望您选择适合您的最佳解决方案
在
运行时使用此代码选择项目...
List<Audio> lst = Audio.GetAudioFiles();
Audio aufile = new Audio { FileDisplayName = "Select Audio File" };
lst.Insert(0, aufile);
lstPickAudio.ItemsSource = lst;
string FileDisplayName="your condition"
lstPickAudio.SelectedItem = lst.Where(p => p.FileName == FileDisplayName).First();