7

コードビハインドページを使用して、プログラムで保存ボタンを作成しています。

    Button btnSave = new Button();
    btnSave.ID = "btnSave";
    btnSave.Text = "Save";

ただし、次の行でOnClick属性を設定できないように見えるため、これでhtmlボタンを作成する必要があるか、何か他のものが必要になると思います。OnClientClickを指定できますが、これは設定したいものではありません。

4

3 に答える 3

14
Button btnSave = new Button();    
btnSave.ID = "btnSave";    
btnSave.Text = "Save";  
btnSave.Click += new System.EventHandler(btnSave_Click);

protected void btnSave_Click(object sender, EventArgs e)
{
    //do something when button clicked. 
}
于 2008-10-09T16:26:32.607 に答える
9

また、ユーザーがボタンをクリックすると、ポストバックが強制され、ページクラスの新しいインスタンスが作成されることにも注意してください。ボタンを作成した古いインスタンスはすでになくなっています。クラスのこの新しいインスタンスが、ロードフェーズの前にボタン(およびイベントハンドラー)も追加することを確認する必要があります。そうしないと、イベントハンドラーが実行されません(ただし、ページのロードイベントは実行されます)。

于 2008-10-09T16:31:46.887 に答える
5

コードビハインドでOnClickイベントのハンドラーを登録する場合は、+=構文を使用してOnClickにハンドラーを追加します。

//Add the handler to your button, passing the name of the handling method    
btnSave.Click += new System.EventHandler(btnSave_Click);

protected void btnSave_Click(object sender, EventArgs e)
{
    //Your custom code goes here
}
于 2008-10-09T16:18:53.247 に答える