2012-01-03 21 views
0

私はITemplateインターフェイスから継承したコントロールを持っています。 データは、コントロールの初期化時に自動的に生成されるHtmlTableコントロールに表示されます。 各行には、標準コマンド(編集、削除など)を表すImageButton個のコントロールが含まれています。ここで 標準のコマンドでImageButtonを作成し、テンプレートを行するためにそれを追加するためのコード:ASP.net ITemplateインターフェイスを実装するコントロールのカスタムコマンドを作成するにはどうしたらいいですか?

var lkbCancel = new ImageButton() 
{ 
    CommandName = "Edit", 
    ImageUrl = "EditIco.png", 
    ToolTip = "Edit", 
    CausesValidation = false, 
}; 

commandCell.Controls.Add(lkbCancel); 

私は(標準のコマンドは、[編集]を追加、削除、および他のない)カスタムコマンドでImageButtonを追加したいと思います。 したがって、カスタムコマンドを追加して、それを正しく制御する方法はItemplateですか?

答えて

1

クリックイベントを登録するだけですか?

lkbCancel.Click += (sender,e) => { 
    //Do something here.. 
}; 

あなたはhere

+0

を参照して、行にバインドされている現在のデータ項目へのアクセスを得ることができます。しかし、私はClickイベントの実装に行をunderplayingにアクセスすることはできません...
が可能かもしれさは、いくつかの方法に存在しますClickイベントまたはCommandイベントの現在の行を渡しますか? –

+0

現在、 'Edit'と' Delete'コマンドをどうやって扱いますか? –

+0

'NamingContainer'または' Parent'を使用してコントロールツリーにあるように、テーブル行にアクセスする可能性がありますが、行がバインドされているデータ項目にアクセスすることができます。http://msdn.microsoft.com/ en-us/library/y0h809ak(v = vs.71).aspx –

関連する問題