问题标签 [bindinglist]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1108 浏览

.net - 使用表达式的 LINQ 动态方法调用

我正在尝试在扩展 BindingList(Of T) 的类中使用 LINQ 表达式实现多列过滤。以下是相关代码:

这旨在像这样使用:

但是,Expression.Call 语句会引发异常。我不太清楚要提供的正确论据。就像现在一样,我在运行代码时收到此错误:

任何帮助表示赞赏,谢谢。

0 投票
1 回答
3450 浏览

c# - C#,BindingList,BindingSource,对 ListBox 进行排序?

我现在已经用谷歌搜索了一个小时,但没有找到有效的答案。

我有一个带有不同成员的 myClass,例如字符串名称和一些 int 数字。然后我有一个 List 类型的 myList,然后我有一个 Listbox 控件。

DisplayMember = "Name"我可以使用和轻松地在列表框中显示列表DataSource = new BindingList<myClass>(myList.Values)

但我想要的是让它可以按班级的不同成员进行排序。我已经尝试创建我的列表的 BindingSource 并将其传递给列表框,但是我的列表框中的唯一条目是“(枚举)”(绑定列表的类型,但不是它的成员)。

我需要什么才能在一个简单的 Listbox 控件中显示一个简单的 List 并使其可由 T 的成员排序?

0 投票
1 回答
1426 浏览

c# - 使用 Bindinglist 在 datagridview 中显示正确的数据成员

目标:

从播放器显示封装字段

问题:
想要显示datamember_id_name并且只_bust在课堂mainform上使用bindingList

是否假设[]在封装字段上方使用语法?



0 投票
1 回答
5367 浏览

c# - 对绑定到 BindingList 的 DataGridView 中的自定义列进行排序

我有一个数据绑定到 BindingList 的 DataGridView。我的 DataGridView 还添加了几个自定义列。这些不是数据绑定的,而是基于我的 BindingList 中的项目生成的(即:我的 BindingList 中类型 A 的项目具有类型 B 的属性;我的自定义列显示 B.Name (编辑:在这种情况下,“ Name”是类 B 的属性,因此该列表示的属性不能直接在 BindingList 中的项目中找到))。

我需要能够对我的 DataGridView 中的所有列进行排序。DataGridView 有两种排序方法:Sort(IComparer) 和 Sort(DataGridViewColumn, ListSortDirection)。我使用第二个对我的数据绑定列进行排序,但在非数据绑定列上使用时它当然会引发异常。如果 DataSource 不为 null,则第一种方法将引发异常。

因此,据我所知,DataGridView 的内置排序方法都不起作用。我还能如何根据我的自定义列对网格进行排序?

编辑:

我现在做的是处理点击列标题,按照这里看到的说明:http: //msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.columnheadermouseclick.aspx

问题就出现了:

当 newColumn 在我的 BindingList 中保存对象的属性之一时,事情就很好了。但是为了对我的一个自定义列进行排序,我将不得不完全避开这一行,并找到其他方法来根据该列对数据网格进行排序。这是否意味着必须构建自己的排序功能?这似乎是一种巨大的痛苦。

0 投票
2 回答
4617 浏览

c# - 从 DGV 中删除 -- 索引 [x] 没有值

设置: 我有两个 DataGridView,每个都绑定到自定义业务对象的 BindingList<>。这些网格有一个特殊的行,其中包含该网格中所有行的数学总计——这个特殊的行反映了 BindingList<> 中相应的特殊对象(我指定了这一点,以便您知道这不是要添加的行到 DGV,但将对象添加到 BindingList<>)。

错误: 有一段时间,我必须定期从 BindingList<> (因此从 DGV)中找到并删除 Totals Row 对象。这是我用来执行此操作的原始代码:

(这不是超级重要,但我循环浏览所有记录的原因是为了防止错误地出现多个总计行的可能性)。此代码在所有情况下都可以完美地用于两个网格之一。但是,在第二个网格上,当调用 RemoveAt 方法时出现以下错误:

...其中“5”是总计行的索引。 我发现这个问题基本上是相同的,除了接受的答案是:1)不使用基础列表,我必须这样做,或者 2)从网格中删除而不是从列表中删除。我尝试了#2,将上面代码示例中最里面的方法调用替换为:

这会引发相同的错误。 我还发现了这个问题,它建议在更改后重新绑定 - 但是,这是不可行的,因为此代码可能每秒调用一次,并且如果列表填充过多,它将使网格无法使用(我知道这个来自糟糕的经历)。

我可以只处理网格的 DataError 事件,但我宁愿不要每分钟弹出一百万个错误,即使它们是无声的。任何帮助将不胜感激。

0 投票
3 回答
2856 浏览

c# - Winform:将自定义控件属性绑定到 BindingList

我正在尝试创建从自定义控件到 BindingList 中对象的绑定。

使用文本框时,我可以轻松编写

使用我的自定义属性“值”,这个东西不起作用(对象没有得到更新)。

我应该用我的自定义控件实现什么以使其正常工作?我已经实现了 INotifyPropertyChanged,但它不起作用。

我只想让这条线工作:

编辑1:

我在网上阅读了这个:http: //kbalertz.com/327413/control-using-Visual.aspx但是目前对我不起作用,也许我做错了什么

0 投票
3 回答
3751 浏览

c# - 创建一个自定义集合,如 BindingList,与 ListBox 一起创建 ListChanging 事件

我有一种情况,我需要知道何时在集合中添加/删除/修改项目。

我尝试在将触发这些事件的类中继承 BindingList,但是“添加”事件不起作用。我发现它工作的唯一方法是重写 EndNew() 方法,但是我没有找到一种方法来获取要在此方法中添加的对象(如果有人对此有解决方案,那也没关系!)

所以构建了一个全新的类,它继承自 BindingList 的相同接口/类并实现了所有内容(但是,我没有继承 ICancelAddNew)。

我通过数据绑定将它绑定到我的列表框,我发现没有任何效果(listchanged 事件和 listchanged 事件)。如何在列表框上模拟 BindingList 行为?

任何建议都非常感谢,我没有任何其他解决方法的想法

编辑1:

这是我的收藏:http ://pastie.org/1978601 这就是我将收藏绑定到 ListBox 的方式

实际上在订阅事件下只有一个 MessageBox.Show("bla");

0 投票
1 回答
9041 浏览

c# - BindingList 与我的类使用它的属性填充 ComboBox?

我的班级有一个 BindingList,我想使用它的属性填充 ComboBox,因此当我的列表更改时,ComboBox 也会更改。

在我的表单加载中,我将其分配给 ComboBox:

我想用 Access 或 AccessId 作为值和 Access 作为打印名称填充该框。

问题是它只会将列表的最后一项打印到组合框我做错了什么?

0 投票
1 回答
4380 浏览

c# - 如何将列表框选定项作为 KeyValuePair在 C# 中?

ListBox对象被绑定BindingList<KeyValuePair<string, string>>

在 SelectionChanged 事件上,我需要将所选项目作为KeyValuePair<string, string>

以下代码给出错误,因为 KeyValuePair 不能用作引用类型。

有什么好的解决方法?

0 投票
2 回答
7112 浏览

c# - 如何从 BindingList 中选择特定项目>?

上面的代码存储了大约 10-30 个对象as KeyValuePair<string, string>

我需要以某种方式选择一个元素,比如说用键“id”

我该怎么做?