问题
How can I update a column value in a binding source with code?
I am trying for something similar to this:
CustomersBindingSource.AddNew();
CustomersBindingSource.Current["CustomerID"] = Guid.NewGuid();
This code currently errors stating: "Cannot apply indexing with [] to an expression of type 'object'".
Any help re-writing this is greatly appreciated!
回答1:
BindingSource's Current property is very generic in what it returns: type object. Object doesn't define an indexer so your [] doesn't work. What you need to do is cast the Current property to the (more-specific) type of what it really is.
For example, if Current is really a DataRowView, you could write:
DataRowView current = (DataRowView)CustomersBindingSource.Current;
current["CustomerID"] = Guid.NewGuid();
Hope this helps,
Ben
来源:https://stackoverflow.com/questions/3169730/access-bindingsource-column-value