0

私は以前にこの問題を抱えていたことを覚えているので、これはかなり簡単に解決できると思いますが、私がそれについて何をしたか思い出せません...

特定のasp.netページを廃止し、そのコントロールの一部を別の既存のページ(いくつかのテキストボックスと2つのボタン)に組み込み、それらをコピーして貼り付け、コードビハインドを追加することにしました。

これを行うと、修正したページのどのボタンもOnClickイベントを発生させないため、新しいイベントを追加しようとしましたが、どちらも発生しません。

これらのボタンの実際のコードビハインドは非常に単純です-レコード、response.redirect、そのようなものを保存します。

何か案は?

ありがとう

ボタンのマークアップ

<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Save" 
                Width="91px" />

コードビハインド

protected void Button1_Click(object sender, EventArgs e)
    {

        helper hl = new helper();
        hl.UpdateComplaint(txtCaseNo.Text, Forename.Text, Surname.Text, txtActionProgress.Text,            
 Response.Redirect("Complaint.aspx");
    }
4

3 に答える 3

0

特別にOnClickイベントの背後にあるコードでデリゲートを定義したため

このコードをコピーする必要があります

Button.Click += .....

このデリゲートをaspxビューまたはコードビハインドで関連付けることができます。コードビハインドで作成した場合は、コピーしません。

コピーアンドペーストを行う場合は、aspxのCodeFileを確認してください

于 2012-08-28T12:46:46.123 に答える
0

OnClick="Button1_Click"大文字と小文字が区別されませんか?イベントハンドラーにブレークポイントを設定して、それが発生するかどうかを確認しましたか?そしてそれはPage_Load問題になる可能性がありますか?あなたがせずに物事を行うこと

if (!Page.IsPostBack)
于 2012-08-28T12:54:31.363 に答える
0

ここにあなたが試みるかもしれないいくつかのことがあります。保証はありませんが、おそらく正しい方向へのプッシュ:)

VisualStudioと問題のASP.NETページを開きます。デザイナで、コントロールをクリックし、[プロパティ]ボックスに移動して、OnClickイベントを探します。空白の場合は、ボックスをクリックして、使用可能なドロップダウンからアタッチするイベントハンドラーを選択します。リストにイベントがない場合は、ダブルクリックしてVisual Studioがデフォルトのイベントハンドラーを作成するかどうかを確認し、前のonClickハンドラーのコードをその新しいメソッドに貼り付けます。

お役に立てば幸いです。

編集後のコメントごとに、別のASP.NETページからのコードビハインドの完全なコピーアンドペーストが、新しいページのマークアップのCodeFileまたはInheritsディレクティブと一致しない部分的なクラス宣言を作成した可能性があることを示唆しました。さまざまな奇妙な振る舞い。

于 2012-08-28T12:49:10.860 に答える