いくつかのサード パーティ製のコントロール、いくつかの ajaxy のもの、およびいくつかの通常の ASP.NET ボタン コントロールを含む ASP.NET (C#) ページがあります。
ボタン クリック イベントは、クリックされても発生しません。
VS 2008 のデザイン モードでボタンをダブルクリックすると分離コードに切り替わりますが、イベント ハンドラーは作成されません。
イベント ハンドラーを手動で作成しても役に立ちません。
ページ全体をここに含めるには大きすぎますが、これが一番上の部分です。
<%@ Page Language="C#" MasterPageFile="~/basewidepage2.master" AutoEventWireup="true" EnableEventValidation="false" CodeFile="CompanyCompliance.aspx.cs" Inherits="CompanyCompliancePage" Title="3DSS" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<%@ Register Assembly="obout_Grid_NET" Namespace="Obout.Grid" TagPrefix="cc2" %>
<%@ Register Src="usercontrols/CalendarEx.ascx" TagName="CalendarEx" TagPrefix="uc2" %>
<%@ MasterType VirtualPath="~/basewidepage2.master" %>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceholder1" runat="Server">
<script type="text/javascript">
// a bunch of function declarations
</script>
...そしてページ上の私のボタン宣言:
<asp:Button ID="LicenseCsvButton" runat="server" Text="Export to CSV" OnClick="LicenseCsvButton_Click" />
...そして分離コード:
protected void LicenseCsvButton_Click(object sender, EventArgs e)
{
// get data
CompanyCompliance cc = new CompanyCompliance(Master.theCompany.ID);
DataTable dt = cc.BusinessLicenses.Tables[0];
// send to browser as download
Tools.SendTableAsCsvToBrowser(Response, dt, "LicenseData");
}
何か案は?それはajaxか何かでしょうか?たぶん、サードパーティの「obout」グリッドコントロールですか?
更新:
1、2 か月前にこれを修正したので、この質問に戻って後世のために答えましたが、どのように修正したかを正確に思い出せませんでした! (お年寄り、呪ってください!) ASP.NET AJAX コントロールの一部を jQuery UI コントロールに置き換えることである程度の成功を収めましたが、本当の解決策は、タグの 1 つのプロパティの 1 つがコントロールを指していたことだと思います。それはもはや存在しませんでした。
同じ状況にある場合は、試してみて、コメントで何がうまくいくか教えてください。正しい答えを投稿します.