- PR -

GRIDVIEW(DateGrid)の機能について

投稿者投稿内容
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2006-04-21 10:14
行が選択された状態になってないんじゃないでしょうか。
なので、SelectRowが存在しない、と。
ボタンからのイベントのとり方で列の判定の仕方は変わってくるかな?
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-04-21 10:53
DG.SelectRow が null(Nothing) になっていませんか?
RowCommand イベント内で処理を行っているのなら
e.CommandArgument などから行を特定してください。
武装キョンシー
ベテラン
会議室デビュー日: 2006/04/07
投稿数: 57
投稿日時: 2006-04-21 11:44
確かに選択された状態になっていないみたでした。
e.CommandArgumentなどで行を特定するやりかたがよくわからないのですが・・?
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-04-21 12:51
引用:

武装キョンシーさんの書き込み (2006-04-21 11:44) より:

e.CommandArgumentなどで行を特定するやりかたがよくわからないのですが・・?


たしか CommandArgument や RowCommand のヘルプに乗っていたとおもいますよ。
http://msdn2.microsoft.com/ja-JP/library/system.web.ui.webcontrols.gridview.rowcommand(VS.80).aspx
武装キョンシー
ベテラン
会議室デビュー日: 2006/04/07
投稿数: 57
投稿日時: 2006-04-21 16:22
Protected Sub DG1_RowCommand(ByVal sender As Object, ByVal e As GridViewCommandEventArgs)
Select Case e.CommandName
Case "change"
Dim index As Integer = Convert.ToInt32(e.CommandArgument)
Dim row As GridViewRow = DG1.Rows(index)

サンプルを参考に上記のようにしたのですが、indexのところでformatexceptionというエラーが表示されました。
ボタンをbottunfieldではなく
asp:bottun id=DGB と組込みにしているからなのでしょうか?
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-04-21 17:18
引用:

武装キョンシーさんの書き込み (2006-04-21 16:22) より:


サンプルを参考に上記のようにしたのですが、indexのところでformatexceptionというエラーが表示されました。


例外の内容はどういうものですか?
また、例外が発生したときに e.CommandArgument には何が格納されていますか?
このあたりはブレイクポイントなりで確認できると思うのですが・・・

引用:

ボタンをbottunfieldではなく
asp:bottun id=DGB と組込みにしているからなのでしょうか?


あう・・・テンプレートカラムにしたら例外がでた、
ButtonField ではなく
テンプレートカラムの ASP:Button にしているのはなぜですか?
武装キョンシー
ベテラン
会議室デビュー日: 2006/04/07
投稿数: 57
投稿日時: 2006-04-21 18:23
ボタンの形がグリットで表示されるよりもよかったのでテンプレート列にして貼り付けたのです。こんな理由なんでテンプレートにするとできないならbottunfieldにします。
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2006-04-21 18:37
ButtonFieldを使うと自動的に適切なCommandArgumentを負荷してくれるみたいですね。
テンプレートにしてボタンを貼り付けてるなら自分でその部分を記述(というかスマートタグからバインディングの設定)してあげればいいだけじゃないかな。

スキルアップ/キャリアアップ(JOB@IT)