gpt4 book ai didi

c# - 在 SelectionChanged 事件(列表框 : SelectionMode=Multiple), 中,第一个选择的项目总是返回而不是当前的

转载 作者:太空宇宙 更新时间:2023-11-03 20:29:01 25 4
gpt4 key购买 nike

我的 ListBox.SelectedValue 返回第一个选定的项目,而不是当前选定的项目。 (当前选中的item是指除了选中的items,我还显示了last item选中的)

这次我的 SelectionMode 是 Multiple 而不是 Single。

private void ListBoxSource_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
var fileSelected = (FileFound)this.ListBoxSource.SelectedValue;
BitmapImage bmpImage = new BitmapImage();
bmpImage.BeginInit();
bmpImage.UriSource = new Uri(fileSelected.FileFullName, UriKind.Absolute);
bmpImage.EndInit();

Image1.Source = bmpImage;

}

现在,我没有在事件中执行此操作,而是尝试将我的图像控件绑定(bind)到 ListBoxSource 但是没有显示任何内容。

 Source="{Binding ElementName=ListBoxSource, Path=SelectedItems

有机会绑定(bind)吗?或者我的 SelectionChangedEvent 代码有什么问题?

最佳答案

要获取最后选择的项目,您需要 SelectedItems 属性的最后一个索引。

var lb = (sender as ListBox);
lb.SelectedItems[lb.SelectedItems.Count - 1];

编辑

要将最后选择的项目作为 FileFound 对象获取,我认为您需要这样:

var lb = (sender as ListBox);
FileFound lastSelectedFile =
(FileFound)lb.SelectedItems[lb.SelectedItems.Count - 1];

关于c# - 在 SelectionChanged 事件(列表框 : SelectionMode=Multiple), 中,第一个选择的项目总是返回而不是当前的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8606129/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com