- - PR -
GridViewテンプレート列でのイベントについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-08-19 12:09
お世話になります。
VS2005、ASP2.0にて開発を行っております。 現在、GridViewにテンプレート列を加え、そこにButtonコントロールを配置し、クリックイベントをRowCommandイベントで補足しております。 そこで質問なのですが、クリックされたButtonコントロールがあるGridView内の位置を知るためには、どうしたら良いのでしょうか。 2日ほど調査してもわからず、現在、RowCommandイベントハンドラ内で、 Button clickedBtn = e.CommandSource as Button; としてから、 clickedBtn.UniqueID で見分けるという愚かなことをやっています。 参考になるUrlなどでもよろしいので、是非どなたかご教授ください。 | ||||
|
投稿日時: 2006-08-19 13:45
んー、CommandNameをSelectにしちゃえば(それかCommandFieldで選択だけ可能にする)
SelectedIndexChangedでGridView.SelectedIndexが拾えますけどね。 | ||||
|
投稿日時: 2006-08-19 16:15
Selectを使うのが楽そうですけどね。
Selectは別にあって、それとは別に使いたいというような場合は自分だったら CommandArgumentにキー項目の値でもバインドするようにするかな。 | ||||
|
投稿日時: 2006-08-20 05:54
Buttonのイベントを利用したらどうでしょうか。 GridViewRowを取得するには、 ButtonのNamingContainerを利用する方法とParent.Parentを利用する 方法があります。 GridViewにButtonを配置して行の値を取得するサンプル http://akiokasai.qsh.eu/Goto.aspx?id=060222-1 _________________ ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集 | ||||
|
投稿日時: 2006-08-20 14:05
VS2003とだいぶ違うので困惑するところが多々ありますが、おかげさまでGridViewの使い方がだんだんわかってきました。
とくにAccessさんのソースコードはありがたさのあまり涙ものでした。 みなさま大変ありがとうございました! |
1