VGridControlBase.GetCellValue(MultiEditorRow, Int32, Int32) Method
Returns the value of a cell in a multi-editor row.
Namespace: DevExpress.XtraVerticalGrid
Assembly: DevExpress.XtraVerticalGrid.v24.2.dll
NuGet Packages: DevExpress.Win.Navigation, DevExpress.Win.VerticalGrid
#Declaration
public virtual object GetCellValue(
MultiEditorRow meRow,
int recordIndex,
int cellIndex
)
#Parameters
Name | Type | Description |
---|---|---|
me |
Multi |
The row that contains the cell. |
record |
Int32 | The index of the record that contains the cell. |
cell |
Int32 | The index of the cell in a multi-editor row. |
#Returns
Type | Description |
---|---|
Object | An object that specifies the cell’s value. null (Nothing in Visual Basic) if no cell is found. |
#Remarks
Use the GetCellValue or SetCellValue method to obtain or set a cell value. To identify the cell, use the field name (which specifies a row) and record index (which specifies a column). You can also use an EditorRow, MultiEditorRow, or RowProperties object to specify a row. For multi-editor rows (which display multiple cells in a single column), you should also specify the cell index. The image below illustrates cells in a single- and multi-editor row.
// Cell is identified by a field name and record index.
vGridControl.SetCellValue(fieldName: "Name", recordIndex: 0, value: "Touareg");
// Cell is identified by a single-editor row object and record index.
vGridControl.SetCellValue(gridRow: erName, recordIndex: 0, value: "Touareg");
// Cell is identified by a multi-editor row object, record index and cell index.
vGridControl.SetCellValue(meRow: merTransmmision, recordIndex: 0, cellIndex: 1, value: 8);
// Cell is identified by a row properties object and record index.
vGridControl.SetCellValue(props: merpTransmissionSpeeds, recordIndex: 0, value: 8);
If you obtain or set the focused row’s value, check if the focused row is an EditorRow or MultiEditorRow, and then use the method’s corresponding overload.
string focusedCellValue = string.Empty;
if (vGridControl1.FocusedRow is DevExpress.XtraVerticalGrid.Rows.EditorRow)
focusedCellValue = vGridControl1.GetCellValue(vGridControl1.FocusedRow, vGridControl1.FocusedRecord).ToString();
Important
If the specified value’s type and the data field’s type do not match, the Invalid
#Example
The following sample code handles the VGridControlBase.CellValueChanged event to sum up the prices of the selected games in the purchase order list.
using DevExpress.XtraVerticalGrid;
using DevExpress.XtraVerticalGrid.Rows;
using DevExpress.XtraVerticalGrid.Events;
private void vGridControl1_CellValueChanged(object sender, CellValueChangedEventArgs e) {
double sum = 0;
BaseRow row = vGridControl1.GetFirst();
while (vGridControl1.GetNext(row) != null){
if (row.XtraRowTypeID == 2){
if (Convert.ToBoolean(vGridControl1.GetCellValue(row as MultiEditorRow, 0, 0)) == true)
sum += Convert.ToDouble(vGridControl1.GetCellValue(row as MultiEditorRow, 0, 1));
}
row = vGridControl1.GetNext(row);
}
vGridControl1.SetCellValue(rowPrice, 0, sum);
}