データグリッドの選択中の要素取得 – プログラミング – Home

データグリッドの選択中の要素取得
 
通知
すべてクリア

[解決済] データグリッドの選択中の要素取得


サマー
 サマー
(@サマー)
ゲスト
結合: 18年前
投稿: 51
Topic starter  

[環境]
Visual C++ 2005
Windows XP
Microsoft SQL Server

[質問]
Visual C++ 経験二ヶ月のサマーです。データグリッドの選択中のある列の要素
を取り出す方法を教えてください。


引用未解決
トピックタグ
Blue
 Blue
(@Blue)
ゲスト
結合: 20年前
投稿: 1467
 

>データグリッドの選択中の
選択中とは?
Select状態の行?それともフォーカスがあるセルの行?

参考)
DataGridコントロールでフォーカスのあるセル位置を取得/設定するには?
http://www.atmarkit.co.jp/fdotnet/dotnettips/169dgcurcell/dgcurcell.html

それと、環境の情報で
> Visual C++ 2005
だけでは足りません。
プロジェクトの種類も明記しましょう。
今回ならば

CLR Windows フォームアプリケーション

でしょうか。ここはカナリ重要な情報になります。


返信引用
サマー
 サマー
(@サマー)
ゲスト
結合: 18年前
投稿: 51
Topic starter  

サマーです。

プロジェクトはWindowsフォームアプリケーションになります。

選択中とはデータグリッドでフォーカスのあるセルの行のことです。

それではよろしくお願いします。


返信引用
Blue
 Blue
(@Blue)
ゲスト
結合: 20年前
投稿: 1467
 

> それではよろしくお願いします。

> 参考)
> DataGridコントロールでフォーカスのあるセル位置を取得/設定するには?
> http://www.atmarkit.co.jp/fdotnet/dotnettips/169dgcurcell/dgcurcell.html
をご覧になっていないのでしょうか?
CurrentCellから、行番号が取れると思いますけど?


返信引用
サマー
 サマー
(@サマー)
ゲスト
結合: 18年前
投稿: 51
Topic starter  

サマーです。すいません。質問のないようを微妙に変えます。

// 選択したセルの行番号取得
int iRow = this->dataGridView5->CurrentCell->RowIndex;

行番号は上のように取得できましたが、

// データセットの所定の行の行番号を取得
int dsRow = this->dsSample->Sub_Table->Rows[iRow][行番号];

データセットから所定の行の行番号の要素を取得しようとしていますが、
'System::Object ^' から 'int' に変換できません
となってしまいます。行番号はint型なんですけど、int型で取得できません。
どうしたらよいでしょうか?


返信引用
Blue
 Blue
(@Blue)
ゲスト
結合: 20年前
投稿: 1467
 

> データセットから所定の行の行番号の要素を取得しようとしていますが、

データセットとDataGridViewは1対1で対応していないのでしょうか?
(DataGridViewには行番号列がないとか?)

> 'System::Object ^' から 'int' に変換できません
エラーメッセージそのまま。
int 型の戻り値じゃないからでしょう。普通にキャストすればいいのだっけかな?


返信引用
名無しの権兵衛
 名無しの権兵衛
(@名無しの権兵衛)
ゲスト
結合: 18年前
投稿: 1
 

>'System::Object ^' から 'int' に変換できません
>となってしまいます。行番号はint型なんですけど、int型で取得できません。
>どうしたらよいでしょうか?
Convertで型変換でもしたら?


返信引用
サマー
 サマー
(@サマー)
ゲスト
結合: 18年前
投稿: 51
Topic starter  

// 選択したセルの行番号を取得
int iRow = this->dataGridView5->CurrentCell->RowIndex;

// データセットの所定の行の行番号を取得
int dsRow = Convert::ToInt32(this->dsSample->Sub_Table->Rows[iRow][行番号]);

すいません。Convert::ToInt32でうまくいきました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました