- - PR -
【Win】グリッドにボタン列を作りたい
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-09-08 17:25
環境
・Windowsフォーム ・C# ・VS.NET DataGridにカスタムのボタン列を追加し、 ボタンをクリックにて検索画面を表示、 指定列に検索画面にて選択した値を返す。 というような処理を行いたいと思っています。 現在はグリッドの外にひとつボタンを設けて クリックすると検索画面が表示され 取得した値はフォーカスが当たっている行の 指定列に返すというようにやっていたのですが、 新規の行で行うと ボタンにフォーカスが行った時点で グリッドの選択行が新規行から最終行に移ってしまい 新規行の指定列に値が返せなくなってしまいます。 では、グリッドの中にボタン列を追加して 行ごとにクリックできるようにしようと考えたのですが コンボボックス列をカスタムする方法は見当たったんですが ボタン列をカスタムする方法が見当たりませんでした。 どなたかこの処理のうまい解決法 またはカスタムボタン列の作成方法をご存知でしたら ご教授いただけませんでしょうか。 |
|
投稿日時: 2005-09-08 18:51
こんにちは。
要はデータグリッドの元になるDataTableのDataRowのインデックスが きちんと取得されていれば問題ないのではないでしょうか? Dim dtTable As DataTable Dim dtRow As DataRow 'DataGrid新規行追加時 dtRow = dtTable.NewRow (先に行が追加されていればその行のDataRow) '既存データ編集時 dtRow = dtTable.Rows(インデックス) あとはデータグリッドをクリックした時などに CurrentRowIndexを取得するなどしてインデックスを求めてはどうでしょう? [ メッセージ編集済み 編集者: とっと 編集日時 2005-09-08 19:13 ] |
|
投稿日時: 2005-09-08 21:41
検索すると結構でてきますよ。
とりあえず、日本語では、 http://codezine.jp/a/article.aspx?aid=3 がありました。 筆者は、「おまけ」と書かれていますが、参考になると思います。 |
1