Devexpress拡張機能(gridview)でやりたい:
string dataInCell = dataGridView1.Rows[i].Cells[j].Value.ToString();
好き :
gridView1.Rows[i].Cells[j]
Devexpress拡張機能(gridview)でやりたい:
string dataInCell = dataGridView1.Rows[i].Cells[j].Value.ToString();
好き :
gridView1.Rows[i].Cells[j]
特定の行のセルの値を取得しようとしている場合は、次の方法があります。
a. フォーカスされた行のセルの値が必要な場合:
view.GetFocusedRowCellValue("fieldName");
b. 彼のハンドルを知っている行のセル値が必要な場合:
view.GetRowCellValue(rowHandle, "fieldName");
幸運を
これを試して
for (int i = 0; i < gridView.RowCount; i++)
{
dataInCell = Convert.ToString(gridView.GetRowCellValue(i, "FieldName"));
}
特定の行を取得するには、次のコマンドを使用できます。
GridView.GetDataRow(rowHandle)
また
GridView.GetRow(rowHandle)
ただし、セルの範囲を変更する場合は、通常、データソースに直接移動する方が適切です
おそらくdatasource
、グリッドに を設定しましたか? その場合は、データソースを使用し、そのdatasource
インデックスを介してアクセスします。
行ハンドルを使用すると、グリッドがソートされているときに問題が発生する可能性があります。私はお勧め...
int dataIndex = gridView.GetDataSourceRowIndex(rowHandle);
var myData = myDataSource[dataIndex];
ジェネリック コレクションを使用している場合、キャストは必要なく、グループ化と並べ替えが処理されます。もちろん、表示されるものとデータが同じものであるとは限りません。たとえば、データが列挙型の場合。これには表示名を表示しますが、データソースの値は列挙型です。通常、表示されるテキストではなく、基になる値が必要です。
you can use below code:
dataGridView1.GetRowValues(dataGridView1.FocusedRowIndex,"column1-name","column2-name",...);
with this you can get value with row index that focused on it and select with field`s name,return value type of object and you cast to int,string and ... such :
string id=(string)dataGridView1.GetRowValues(dataGridView1.FocusedRowIndex,"column1-name");
but it depends to type column1-name
私はあなたがこれを探していると思います:
string str = gridView1.GetRowCellValue(Convert.ToInt32("ROW_NUMBER"), "COLUMN_NAME").ToString();
GetRowCellValueを使用する必要があります
string cellValue;
cellValue = gridView1.GetRowCellValue(2, "ID").ToString();