简体   繁体   中英

how to programatically edit the cell value of a datagridview in virtual mode?

I have a DataGridView in virtual mode. I only implemented the CellValueNeeded eventhandler as described in http://msdn.microsoft.com/en-us/library/15a31akc.aspx .

Implementing the rest of the events only seems needed when you want to be able to edit the cells manually.

I would like to programatically edit a DataGridView cell value.

I tried this using the following code:

DataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically;
DataGridView1.BeginEdit(false);
DataGridView1.Rows[0].Cells[0].Value = "testing new value";
//just using a random parameter here, not sure it is needed when editing programmatically
DataGridView1.CommitEdit(DataGridViewDataErrorContexts.LeaveControl);
DataGridView1.Refresh();

but no success :(

any help would be appreciated

When you use virtual mode, you provide your own logic for linking the DataGridView to the underlying data source. So, to edit a cell value, you should change the value in the underlying data source, and call Refresh to refresh the displayed value (this will cause the CellValueNeeded event to be called for all displayed cells)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM