.NET TIPS [ASP.NET]DataGridコントロールに削除ボタンを追加するには?デジタルアドバンテージ2003/12/26 |
|
|
ASP.NETのDataGridコントロールには、グリッドから行を削除する場合に使用する「削除ボタン」を実装するための仕組みが用意されている。次の画面は、今回作成する削除ボタンを利用したサンプル・プログラムの実行画面である。削除ボタンをクリックすることにより、そのボタンの行がグリッドから削除される。
削除ボタンを使用したサンプル・プログラム(deletedg.aspx)の実行画面 |
削除ボタンは、「[ASP.NET]DataGridコントロールの列にボタンを表示するには?」で解説しているボタン列のボタンの1つのバリエーションである。ボタン列のボタンを削除ボタンとして機能させるためには、ボタン列を定義している<asp:ButtonColumn>要素のCommandName属性で「delete」を指定すればよい。
<asp:DataGrid ……>
<Columns>
……
<asp:ButtonColumn
Text="削除"
CommandName="delete"
ButtonType="PushButton"
HeaderText="ボタン" />
</Columns>
</asp:DataGrid>
このようにして定義した削除ボタンでは、それがクリックされた場合に<asp:DataGrid>タグのOnDeleteCommand属性で指定したメソッドがDeleteCommandイベントのイベント・ハンドラとして呼び出される。削除ボタンとはいうものの、CommandName属性で「delete」を指定した場合の特別な機能はこれだけである。
ちなみに、「[ASP.NET]DataGridコントロールに選択ボタンを追加するには?」では、CommandName属性に「select」を指定して作成する「選択ボタン」について解説している。
削除ボタンを使用したサンプル・プログラム
削除ボタンを使用したサンプル・プログラムのソース・コードは次のようになっている。このプログラムは、「[ASP.NET]DataGridコントロールで編集を可能にするには?」で示しているサンプル・プログラムをベースにしたものだ(編集ボタンやそれに必要なメソッドは省いている)。
|
|
削除ボタンを使用したC#のサンプル・プログラム(deletedg.aspx) | |
削除ボタンがクリックされた場合に呼び出されるMyGrid_Deleteメソッドでは、まずDataGridオブジェクトのDataKeysプロパティによりキー値であるIDを取得し、次にProductsクラスのDeleteメソッドを呼び出して、そのIDを持ったデータテーブル内の行を探し出して削除している。
void MyGrid_Delete(object sender, DataGridCommandEventArgs e) {
int id = (int)MyGrid.DataKeys[e.Item.ItemIndex];
Products.Delete(id);
BindMyGrid();
}
クリックされた削除ボタンの行(DataGridItemオブジェクト)は、このメソッドではe.Itemにより取得できる。
なお、「[ASP.NET]DataGridコントロールの削除ボタンで確認メッセージを表示するには?」では、削除ボタンがクリックされた場合に確認のためのメッセージ・ボックスを表示する方法について紹介している。
カテゴリ:Webフォーム 処理対象:DataGridコントロール 使用ライブラリ:DataGridコントロール 使用ライブラリ:ButtonColumnクラス(System.Web.UI.WebControls名前空間) 関連TIPS:[ASP.NET]DataGridコントロールの列にボタンを表示するには? 関連TIPS:[ASP.NET]DataGridコントロールに選択ボタンを追加するには? 関連TIPS:[ASP.NET]DataGridコントロールで編集を可能にするには? 関連TIPS:[ASP.NET]DataGridコントロールの削除ボタンで確認メッセージを表示するには? |
「.NET TIPS」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|