0

各行のグリッド内にダイナミック テキスト ボックスとボタンを作成しています。次に、各ボタンのクリック イベントを作成します。ITemplate を使用してグリッド内にボタンを作成するには。

コード:

ImageButton imbtnAdd = new ImageButton();
imbtnAdd.ID = "imbtn" + columnName;
imbtnAdd.ImageUrl = "btn_add_icon.gif";
imbtnAdd.Width = 20;                    
container.Controls.Add(imbtnAdd);

エラー:

使用imbtnAdd.Click += new ImageClickEventHandler(imbtnAdd_Click);しましたが、エラーメッセージが表示されます

imbtnAdd_Click が存在しません

4

2 に答える 2

2
ImageButton imbtnAdd = new ImageButton();
imbtnAdd.ID = "imbtn" + columnName;
imbtnAdd.ImageUrl = "btn_add_icon.gif";
imbtnAdd.Width = 20;             

imbtnAdd.Click += imbtnAdd_Click;

container.Controls.Add(imbtnAdd);

// ...

private void imbtnAdd_Click(object sender, EventArgs e)
{
    // handle event
}
于 2009-11-14T05:23:09.393 に答える
1

ジュリスタの答えは正しいです。

ただし、すべてのボタンに異なるハンドラーを実装する必要があり、.Net 3.0 以降を使用している場合は、ラムダを使用できます。

imbtnAdd.Click += (object sender, EventArgs e) =>
{
    // Code handling code goes here...
};
于 2009-11-14T05:42:32.553 に答える