wpf SortMemberPath排列后view数据和数据源不同步 20C

wpf DataGrid中使用SortMemberPath排列后界面实现了排序,但是后台数据源没有跟着排序。
我要实现的功能是:DataGrid有列数据是超链接,已经实现功能,但是使用SortMemberPath点击表头重新排列后,点击获得的数据是排列前对应的数据,求大神知道。

2个回答

private void MainGrid_Sorting(object sender, Microsoft.Windows.Controls.DataGridSortingEventArgs e)
{
List tempListPros = new List();
for (int i = listPros.Count - 1; i >= 0; i--)
{
tempListPros.Add(listPros[i]);
}
listPros = tempListPros;
this.MainGrid.DataContext = listPros;
}
这是c#的参考代码

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
WPF的DataGrid数据源中的数据更新后,如何保持视图正确排序

XAML中的代码 后台代码

wpf 绑定数据无法更新ui控件可能存在的问题

BindingMode的枚举值有: ① OneWay ② TwoWay ③ OneTime:根据源端属性值设置目标属性值,之后的改变会被忽略,除非调用BindingExpression.UpdateTarge方法 ④ OneWayToSource:与OneWay类似,但方向相反,用于目标属性是非依赖项属性的情况 ⑤ Default:默认值,根据目标属性确定绑定类型.依赖项属性都由一个

wpf 如何更改一个页面的绑定数据源

今天做东西就是在一个页面上的事件响应要更改另一个页面上的绑定的数据源,当时以为是没有写绑定事件,可是事后发现用的是Observastion 这个自动会更新的,后来又把Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}” 加上了,可是还是不行,后就自已怎么也就想不明白 , 出去转一下,突然发现前台的Binding是到上 的,这样的话就只能到后面找这

wpf中datagrid绑定数据源发生改变

若datagrid绑定的数据源是同一个的话,即使里面的数据不同。页面也不会刷新,则需要重置数据源,再绑定。处理如下: datagrid1.ItemsSource=ListModule; 若ListModule里面的数据改变了,重新绑定后。 datagrid1.ItemsSource=ListModule; 则不能达到预期的显示效果。 应先设为null,再绑定即可。 datagrid1.It

ComboBox使用BindingSource做数据源,更改数据源及绑定项时是否会触发SelectedIndexChanged事件?

<br />常常需要写这样的程序:根据一个ComboBox的当前值的变化来做不同的处理(例如根据ComboBox为班级列表,选不同班级则datagridview显示不同班级的所有学生);<br />这时往往要在combobox的SelectedIndexChanged加相应的代码以显示不同班级的学生。那么selectedindexchange事件的触发条件你知道吗?<br /> <br />1、如果你的combobox是通过在设计器中通过设置相关数据源的属性的方式设置的,那么在formload事件中的fil

WPF grid绑定数据

1,wpf新建一个window 拖一个dataGrid控件到正中央,适当调整grid大小    注意:如果没有设置grid的列,则需要设置grid的AutoGenerateColumns=true,它默认是false 2,在 window_loaded事件中写绑定代码  private void Window_Loaded(object sender, RoutedEven

WPF——控件绑定到数据后 第一次加载界面时绑定成功 但后来数据源发生变化 控件无变化

1.在 window_Loaded中设定对象绑定到源 private void window_Loaded(object sender, RoutedEventArgs e) { CurUserName.DataContext = CurrentUserAAA; } 2.将对象属性绑定到数据源的属性 &amp;lt;Label x:Name=&quot;CurUserName&quot; Conten...

WPF学习笔记——ListBox用ItemsSource绑定数据源

protected class UserItem { public UserItem(int Id, string Name, bool IsActived) { this.Id = Id; this.Name = Name; this.I

数据源修改联动界面更新

用 BindingList 对象作为数据库 lvSpecInfo.ItemsSource = new BindingList(query.Result);

WPF的ComboBox数据绑定,使用Dictionary作为数据源

ViewModel //属性定义      Dictionary _selGroupList;         ///         /// 分组下拉列表         ///         public Dictionary selGroupList         {             get { return _selGroupList; }        

WPF Listview绑定数据发生改变后前端没有更新

前端没有更新的原因:1.将控件与列表绑定ICMask.ItemsSource = _poppingWordList;2.在更新绑定数据时_poppingWordList = newWordList;因为List是引用,这样是将_poppingWordList的指向的列表更换了,而ICMask.ItemsSource指向的列表并没有更新。我的解决方法:方法一:重新绑定        private ...

WPF中DataGrid更改后台数据并更新前台显示的问题

在做项目的时候是用WPF做界面的,其中涉及到了用DataGrid显示数据的功能,要求当在后台对源数据进行修改时,前台的数据显示能自动更新,因为是第一次接触WPF,所以不太会,网上查了很多,都是前台更改数据更新到源数据的,跟我的目标正好相反,自己摸索查资料终于解决了,现在写出来造福大众。前台:&amp;lt;DataGrid x:Name=&quot;dataGrid&quot; ItemsSource=&quot;{Binding}&quot;...

DataGridView 与数据源的排序问题

DataGridView 的排序功能 :三种排序模式:1、DataGridViewColumnSortMode.Automatic  用户单击列头排序,显示排序图片。排除列头选择功能。                        2、DataGridViewColumnSortMode.NotSortable    仅以编程排序,但本身不排序,列头不包含排序图标。                ...

WPF中的binding(二)- 使用CLR对象或者对象名称作为Binding的数据源

上一节中主要介绍了在cs代码中进行绑定数据源的实现,后面将逐步介绍下为Binding指定数据源的几种方法。这一节,我们先介绍以CLR对象和对象名称作为Binding的数据源: 一 以CLR对象作为Binding的数据源。          首先,介绍下CLR对象的概念。这里,只是我自己一个简单的理解,并没有涉及CLR很深层次的理论性的东西,因为我也不懂~。在C#中我们会经常看到下面这种类:

WPF ListView 的三种数据绑定方式

ListView 的三种数据绑定方式 1.最原始的绑定方式:   public ObservableCollectionobject> ObservableObj; public MainWindow() { InitializeComponent(); ObservableObj =

C# WPF在xaml中的数据绑定

在WPF的绑定中个人分为两种:非集合数据绑定和集合数据绑定。 非集合数据绑定:指的是数据为单个,而不是有很多子项,例如Button,TextBox,TextBlock等等的绑定。 集合数据绑定:指的是

WPF DataGrid 绑定数据及时更新的处理

默认情况下datagrid 绑定数据源后,在界面编辑某一列后,数据不会及时更新到内存对象中。如在同一行上有一个命令对来获取 当前选中行(内存对象)发现,数据未更新过来。解决办法:在列的绑定属性里加上UpdateSourceTrigger,示例XAML如下 <DataGrid Name="dgProducts" IsReadOnly="False" CanUserAddRows="False

wpf 获取DataGrid排序后的结果?

var abc=datagrid.Items.Cast().Select(x => x as 类名).ToList();//界面字段排序后的集合

WPF DevExpress Chart控件 界面绑定数据源,不通过C#代码进行绑定

--> 只需要在最外层的Grid或其他空间上绑定数据源,然后在Chart控件上绑定DataSource,最后指定Chart控件中柱状图的SeriesDataMember、ArgumentDataMemeber、ValueDataMember就可以了。 刚开始只找到了通过C#代码去进行绑定的方式,因为项目中用到的是打印模板,模板没有C#代码后台,所有纠结这个问

WPF--MVVM之DataGrid数据源绑定

DataGridComboBoxColumn 可显示可编辑   ElementStyle和EditingElementStyle  住:ItemSource的Value值格式 

WPF学习日志1---DataGrid绑定与修改更新(数据List & 数据库)[部分代码有摘录其他文章]

本内容分为三大块: DataGrid数据绑定显示 内容修改—后台源数据 内容修改—数据库源数据​ DataGrid数据绑定显示 ​ 其实数据显示也分为后台源数据与数据库源数据两部分,因为类似度较高所以合并一起写了。先看后台源数据: a.首先得有一个源数据的类​class Students { public string Id { get; set; } publ

WPF之TreeView绑定数据获取节点数据

通过本资源可了解如下 1.TreeView如何绑定数据。 2.数据结构。 3.通过绑定Command获取节点数据。

wpf绑定用户控件及listview(gridview)数据源

用户控件: 前台界面 <UserControl x:Class="testUserControl.project" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

DataGrid中的子控件Combox之数据源绑定(WPF)

看到同事有一个这样的需求,自己就写了一个小例子 如何根据DataGrid中Combox中选择的值将对应的数据显示到DataGrid中 创建了 三个数据源   List SelectionList为 Combox 数据源存放于所有数据相相关联的字段值(Selection), tb为 DataGrid数据源存放的是与Combox相关联的数据 (Age,Name,Selection), old

WPF 多个数据源的实现DEMO

WPF 多个数据源的实现DEMO,ListView中有个Combox籍贯,ListView的数据来自XML数据源,Combox籍贯来自另一个数据源。 <ListView Height="262" Margin="345,12,12,0" ItemsSource="{Binding Source={StaticResource myPerson4},XPat

treeview控件(动态数据绑定+整行选择)(WPF)(一)

在使用treeview控件时,数据大多都是从数据库中读取后动态绑定的,而且为了美观,在选择项的时候多会高亮显示整行

WPF 关于 ComboBox 的数据绑定

ComboBox控件包含有一个下拉列表,一个文本编辑框。通常我们会把下拉列表绑定到一个List&amp;lt;string&amp;gt;的集合上,将编辑框绑定到一个对象上,实现数据列x'ian...

WPF利用通过父控件属性来获得绑定数据源RelativeSource

有时候我们不确定作为数据源的对象叫什么名字,但知道作为绑定源与UI布局有相对的关系,如下是一段XAML代码,说明多层布局控件中放置一个文本控件,来显示父级控件的名称。 1、XAML

WPF绑定XML数据源

WPF在绑定XML时会有一些麻烦,经常是不显示列表内容,但是内容项却是存在,这说明配置XAML信息有误,见图例效果,绑定XML数据源,且能实现分组。1.XML数据源,其中xmlns是命名空间,后面代码中会将其改成前缀名sb使用 Code: xml version="1.0" encoding="utf-8" ?>   Students xmlns

WPF combox数据绑定的问题

WPF中的Combox绑定表面看起来似乎比winform重的winform绑定更复杂 但是,不容忽视的是wpf中的combox的数据对象绑定绑定的是对象,比如用Messagebox.show(combox.selecteditem),出现的内容是整个对象,可以通过combox.selecteditem as object  来还原成你的对象进行操作。这是一个亮点,注:datagrid也一样

WPF在ListView绑定数据后如何清空Items的问题

当ListView.ItemsSource绑定了数据后,想要清空ListView不能再用ListView.Items.Clear();这种方法了,用这种方法,编译器就会报错:当 ItemsSource 正在使用时操作无效。改用 ItemsControl.ItemsSource 访问和修改元素。我们可以用另一种方法:1.先把ListView.ItemsSource=null;2.然后重新给ListV...

WPF中关于ListBox绑定数据的问题

在定义ListBox的ItemSource绑定时,出现了初次绑定有数据,但是数据变化时视图没有更新的情况。

WPF combobox 的两种绑定方式

1  传统的 disPlayMemberPath 的方式

WPF中实现ListView控件绑定到多个数据源的并集

WPF里面的数据绑定功能很强大,让你可以用一种非常直观的方式显示和编辑数据,但是仍然会有一些地方让人容易混淆,例如将ListView控件绑定到多个数据源的并集上。 例如你的窗口里面有三个ListView控件A、B、C,A和B分别绑定到整数集合CollectionA和集合CollectionB,然后你想将C绑定到CollectionA和CollectionB的并集上面去,这个时候很明显你不想

TreeView数据源绑定

private void bindTree(DataTable dt) { TreeNode mainNode = new TreeNode(); //这里是创建一个根节点,就是dome中看到的Root DataRow[] dr = dt.Select("Pid='0'"); if (dr[0]!=nu

WPF中利用ODBC连接读取MYSQL中的数据

项目中用到的,经过一个上午的百度【主要是解决数据源ODBC中的配置DSN问题】。 参考资料:http://yongyouyouli.blog.163.com/blog/static/131792050201032744842654/ 安装: ①MySQL【我的是5.5版本】以及phpMyAdmin【我将其理解为MySQL的可视化软件】 ②mysql-connector-odbc-5.1.8

WPF ListView绑定数据实例

WPF中ListView用来显示数据十分方便, 我们可以将它分成

WPF新手之如何将数据绑定到TreeView

WPF 数据 绑定 模板 TreeView ObservableCollection

WPF DataGrid数据刷新

WPF DataGrid数据刷新

c# comboBox绑定数据后会默认显示第一个值

<br />一直困扰我很久的问题 <br />当comboBox绑定数据源后,会显示第一个值<br />例如<br />         cboDept.DataSource = datatable<br />         cboDept.ValueMember = "字段名";<br />         cboDept.DisplayMember = "字段名";<br />         cboDept.Text = "";<br />但cboDept会显示一个值,而不是空白,可能是触发了com

WPF ListBox 横向排列

如果只是单纯的让ListBox可以横向配列,这样很简单,只需要更改ListBox的ItemsPanel模板就可以,例如: ListBox> ListBox.ItemsPanel> ItemsPanelTemplate> WrapPanel Orientation=”Horizontal” IsItemsHost=”True”/> /ItemsPanelTemplate> /List

wpf ObservableCollection界面有时候不会根据数据的变化进行跟新的问题

最近做一个物业权限管理的项目,需要在前端界面数据变化的时候通知数据源进行跟新,然后将跟新的数据写入数据库中,一开始是想通过前端的界面进行数据的获取,后来发现这是错误的,应该直接从数据源进行获取数据,所以需要前端数据变化时通知数据源进行更新。这就用到了ObservableCollection&amp;lt;T&amp;gt;这个动态数据集合,可以说这个比list&amp;lt;T&amp;gt;好用,但也不是万能的,至少单独一个人...

WPF: WrapPanel 容器的数据绑定(动态生成控件、遍历)

问题:        有一些CheckBox需要作为选项添加到页面上,但是数目不定。而为了方便排版,我选择用WrapPanel面板来作为父容器。那现在的问题就是如何把这些控件添加到这个WrapPanel里了。我想到了两个方法,第一个是先得到控件数目,然后再动态生成并加载到这个W

WPF DataGird 源改变后界面不刷新

问题: 使用List作为DataGrid的Itemsource: XAML: ItemsSource=&quot;{Binding ProNames}&quot;, ViewModel: public List ProNames  {            get             {                                return protocalMode...

WPF与MVVM的实现(二)数据绑定

    接触WPF已经有两年,大大小小开发过几个项目,但从来没有系统的去学习过。几次开发项目时都觉得十分的恼火,太多的事件稍微考虑不到位就会带来麻烦,为此特地系统的看了一本《C#高级编程》第10版,了解到MVVM框架,看了之后十分欢喜,本篇记录研究MVVM过程。   0001 INotifyPropertyChanged接口的使用 本文转移到 https://shaynerain.com/...

UITableView 数据源更新后添加数据

//数据源添加后 给tableView 指定行添加数据 NSIndexPath *indexPath = [NSIndexPath indexPathForRow:self.dataArray.count-1 inSection:0]; [_tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation...

关于多线程下动态加载ListView数据源的注意事项

关于listview更新数据和界面不同步时出现的问题

.NET各大平台数据列表控件绑定原理及比较(WebForm、Winform、WPF)

说说WebForm: 数据列表控件:WebForm 下的列表绑定控件基本就是GridView、DataList、Repeater;当然还有其它DropDownList、ListBox等。  它们的共同的设置数据源方法:XXX.DataSource=数据源。  那么这个数据源的格式,究竟有啥要求?最简单的方式是随便给弄个,然后等它抛异常:     从上面的错误可以看的出来,基本上支持三种

WPF DataGrid 以DataTable为数据源,自定义某列为ComboBox的方法

在项目中遇到的一个实际问题。现在有一个DataTable,希望能够自动显示在DataGrid中,但是因为有一个外键的关系,所以希望用ComboBox在定制某一列。xaml的方式比较死板,所以想用代码进行解析。直接上代码,稍后逐步解释。1. DataGrid 初始化时分配数据(相应Initialized事件) // 在这里第一次加载数据 DataTabl...

WPF Data Binding之指定源(Source)的几种方法【三】

Binding的源是数据的来源,所以,只要一个对象包含数据并且能够通过属性将数据暴露出来,它就能当作Binding的源来使用。包含数据的对象比比皆是,但必须为Binding的Source指定合适的对象Binding才能正常工作。 1.1 没有Source的Binding----使用DataContext作为数据源     在UI树的每个节点都有DataContext属性。Bin

相关热词 c#框体中的退出函数 c# 按钮透明背景 c# idl 混编出错 c#在位置0处没有任何行 c# 循环给数组插入数据 c# 多线程死锁的例子 c# 钉钉读取员工排班 c# label 不显示 c#裁剪影像 c#工作进程更新ui
立即提问