C# WPF ListView排序会丢失最后一行中的列数据
在对WPF ListView ColHeader进行排序时,我遇到了一个奇怪的行为!! 我有一个绑定到datatable的listview。 col有细胞模板 在一个单元格模板[salary column]中,我在xaml中使用了多重绑定。 当此listview加载数据时,一切都正常工作 我分别更改了每行中薪资列的数值,如1,4,3,5,2 也就是说,在第一行中,工资col是1, 第二行,薪资列为4,第三行薪资列为3,以此类推 当我点击工资标题列进行排序时,listview正在排序,但工资文本框中最后键入的值[即,此处为2]消失C# WPF ListView排序会丢失最后一行中的列数据,c#,wpf,listview,sorting,C#,Wpf,Listview,Sorting,在对WPF ListView ColHeader进行排序时,我遇到了一个奇怪的行为!! 我有一个绑定到datatable的listview。 col有细胞模板 在一个单元格模板[salary column]中,我在xaml中使用了多重绑定。 当此listview加载数据时,一切都正常工作 我分别更改了每行中薪资列的数值,如1,4,3,5,2 也就是说,在第一行中,工资col是1, 第二行,薪资列为4,第三行薪资列为3,以此类推 当我点击工资标题列进行排序时,listview正在排序,但工资文本框
ICollectionView myview = CollectionViewSource.GetDefaultView(lv.ItemsSource);
if (myview != null)
{
myview.SortDescriptions.Clear();
SortDescription sd = new SortDescription("Salary", direction);
myview.SortDescriptions.Add(sd);
myview.Refresh();
}
当我在添加sort desc后检查myview时,最后一行中的工资值消失了!!有什么不对吗?我可以根据您的描述推测发生了什么,但是显示数据表的xaml会很有用。默认情况下,TextBox的Text属性的绑定在失去焦点之前不会提交该值。将绑定的UpdateSourceTrigger更改为PropertyChanged:
Text="{Binding Path=Text, UpdateSourceTrigger=PropertyChanged}"
这将在每次按键时提交值。在没有看到代码的情况下,无法确定这是否是您的问题
干杯,
埃里克我解决了这个问题。这是在文本框中编写的一些代码丢失焦点事件的错误。我修好了。谢谢你的帮助。