アイテムIDであるがGridView
関連付けられています。イベントDataKey
内でその値を取得するにはどうすればよいですか?RowCommand
これはうまくいくようですが、キャストが好きではありませんLinkButton
(他のコマンドがイベントを起動している場合はどうなりますか?)、そして私はNamingContainer
ビットについてあまり自信がありません。
LinkButton lb = (LinkButton)e.CommandSource;
GridViewRow gvr = (GridViewRow)lb.NamingContainer;
int id = (int)grid.DataKeys[gvr.RowIndex].Value;
代わりにそのIDをとして渡すことができることは承知していますが、柔軟性を高めるためCommandArgument
に使用することにしました。DataKey
IDに隠しフィールドを使用できることも承知していますが、使用したくないハックだと思います。