问题标签 [bindingsource]

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 投票
2 回答
2394 浏览

c# - 如何使用 BindingSources 将 DataObject 的列表绑定到网格?

在一个程序集中,我创建了一个如下所示的类:

现在我想在 Winforms 下用 Gridcontrol 显示这个列表。我虽然是一个DataGrid。
虽然我来自 ASP.net 我首先想到的是

有效,但我更喜欢使用 BindingSources 进行更好的数据绑定。(因为我一直听说那是要走的路)
我设法将 BindingSource 放到表单上并将 DataSource 属性设置为 A 类。
但是我在哪里可以设置 SelectMethod 及其参数?如果我将 dataGridView 的 DataSource 属性设置为 BindingSource,它只会显示一个空行。

这是正确的方法吗?它只需要在向导中进行一些额外的点击,还是我需要阅读大量文档才能使其正常工作?

编辑:有没有办法自动绑定到我的选择方法?或者 BindingSource 是否只支持映射列,但实际上并不绑定数据,这意味着我仍然需要设置 DataSource 属性?

0 投票
1 回答
569 浏览

linq - BindingSource 和 ComboBox:组合框绑定在另一个源上

我想以我的形式制作一些东西。我在 Linq 上绑定了一个绑定源到 Sql 类。Workorder 类包含一个字段 Site。我想显示包含所有站点的组合框,但在我的工作订单中选择了站点。

我很清楚?

朱利安

0 投票
1 回答
1428 浏览

windows - 使用 bindingNavigator、bindingSource 保存行更改的代码

当使用 bindingNavigator 和 bindingSource 并单击移动按钮或添加按钮或删除按钮时,bindingSource 在按钮的单击处理程序之前完成其操作代码(即用户代码)

这可以防止对行更改执行保存操作。我想找到一个 bindingSource 钩子,比如“beforeRowChange”。

我可以将 bindingSource 子类化并领先于添加或删除事件,但这并不涵盖所有行移动操作。

任何线索,欢迎提出建议。

0 投票
3 回答
32989 浏览

c# - C#:添加列以使用代码绑定 DatagridView

// 从此 Admin 类获取数据:

// 在我的表单上:

工作得很好,但与其删除我不想要的 20 多列数据,我宁愿只添加我所做的少数数据。另外,命名标题标题是一种奖励。但是, add 方法对我不起作用:

我得到了适当的行数,并且列标题设置正确……但是行中填充了空白数据。

0 投票
1 回答
2506 浏览

c# - BindingSource.Find 键比较不区分大小写?

我正在使用 BindingSource.Find() 在刷新 DataGridView 后返回到用户的位置。我使用 BindingSource.Find() 和 RowID 作为我正在搜索的 DataColumn。不幸的是,Oracle 可以返回两个仅在大小写上不同的 RowID。

BindingSource.Find() 不考虑大小写返回第一个匹配项。

查看 MSDN 文档:

它说propertyName比较不区分大小写,但没有提到key比较是否。

有谁知道如何使 BindingSource.Find 区分大小写?

0 投票
1 回答
833 浏览

.net - C#:BindingSource.Find 是否考虑了 BindingSource.Filter?

我正在使用 aBindingSource作为DataGridView. 用户可以过滤条目。在内部,我BindingSource.Filter当然使用该属性。一切正常。

然后我从扫描仪获取输入,需要选择列表中与扫描的条形码匹配的第一个条目。无论是否过滤,显示的列表都可能包含多个匹配条目。为此,我使用BindingSource.Find. 只要列表没有被过滤,这效果很好。

BindingSource.Find是在我现在使用的过滤数据中BindingSource.Filter搜索还是在整个数据集中搜索?

免责声明和道歉
如果我被允许从生产中取出扫描仪并将其连接到我的机器上,我会尝试一下......

我在一个实施快速修复的客户站点,所以我没有用谷歌搜索,因为我认为无论如何我很快就能在这里得到答案...... :-)

0 投票
2 回答
2108 浏览

c# - 在 UserDeletingRow 上的 dataTable 中将行标记为已删除

我有一个通过 BindingSourceControl 绑定到 winforms dataGridView 的数据表。我希望能够处理来自 dataGridView 的 UserDeletingRow 事件,并将我的 dataTable 中的行标记为已删除。然后,我需要能够从数据表中检索标记为已删除的行,以便在单击“保存”按钮时可以将它们从数据库中删除。请注意,我不想在每次触发 UserDeletingRow 时从数据库中删除,只在我的数据集中将该行标记为已删除。

谁能指出如何做到这一点?

0 投票
2 回答
1785 浏览

.net - WinForms:如何在 UserControl 中查找所有 BindingSources

在我们正在开发的程序中,用户数据收集在 UserControls 中,这是使用 BindingSources 绑定到业务实体的数据。

我需要以编程方式在 UserControl 中找到所有 BindingSources。

由于 BindingSource 源未添加到 UserControl 的 Controls 集合中,因此我无法在其中进行搜索。

这可以做到吗?

0 投票
2 回答
2028 浏览

c# - C# BindingSource.AddingNew 从未被调用?

当我离开我的数据网格的单元格时,永远不会调用 BindingSource.AddingNew。

DataGrid 将 BindingSource 作为数据源,BindingSource 又具有“客户”的“列表”。

BindingSource 需要什么来创建新的 Customer 对象并将其添加到底层 ICustomerList ?

当然,接口没有构造函数......

但我的客户对象有一个默认构造函数!

这就是我得到的例外:

bei System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfoculture, Object[] activationAttributes) bei System.SecurityUtils.SecureCreateInstance(Type type, Object[] args) bei System.ComponentModel.BindingList1.AddNewCore() bei System.ComponentModel.BindingList1.System.ComponentModel.IBindingList.AddNew() 在 System.Windows.Forms.BindingSource.AddNew() 在 System.Windows.Forms.CurrencyManager.AddNew() 在 DevExpress.Data.CurrencyDataController.OnCurrencyManagerAddNew() 在 DevExpress.Data 之后。 CurrencyDataController.AddNewRow() 在 DevExpress.XtraGrid.Views.Grid.GridView.OnActiveEditor_ValueModified(Object sender, EventArgs e) 在 DevExpress.XtraEditors.Repository.RepositoryItem.RaiseModified(EventArgs e) 在 DevExpress.XtraEditors.BaseEdit.OnEditValueChanging(ChangingEventArgs e)在 DevExpress.XtraEditors.TextEdit.OnMaskBox_ValueChanged(Object sender, EventArgs e) 在 DevExpress.XtraEditors.Mask.MaskBox.RaiseEditTextChanged() 在 System.Windows.Forms.TextBoxBase.WmReflectCommand(Message& m) 在 DevExpress.XtraEditors.Mask.MaskBox 之后。 BaseWndProc(消息&m) 北 DevExpress.XtraEditors.Mask.MaskBox.WndProc(Message& m) 北 DevExpress.XtraEditors.TextBoxMaskBox.WndProc(Message& msg) 北 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 北 System.Windows.Forms .NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

0 投票
1 回答
2994 浏览

c# - C#:如何通过 Enum 作为键将 HashTable 绑定到 ComboBox?

上面的代码不起作用:) 它使用字符串作为哈希表中的键而不是枚举 MyResultTypes,它正在工作。现在发生的是组合框填充了哈希表的值(如我所愿),但未选择默认选定值。

在这个例子中如何使用枚举?谢谢

编辑:对不起,ComboTOResult 是 comboResult,错过了

编辑2:对不起,它确实有效。我的错