ユーザーコントロールを作成してメンバーシップAPI(カスタムグリッドビューを使用してデータをよりよく表示)を作成しようとしています。コードとコントロールがページ内で正常に機能していました私がそれらを.ascxに移動したとき、イベントはそれに発砲するのを止めました。ユーザーコントロールイベントがハンドラーに届かない
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="CustomMembership.ascx.cs" Inherits="CCGlink.CustomMembership" %>
<asp:Panel ID="mainPnl" runat="server">
<asp:Label
id="lblError"
ForeColor="Red"
Font-Bold="true"
runat="server" />
<asp:GridView
id="grdUsers"
HeaderStyle-cssclass="<%# _headercss %>"
RowStyle-cssclass="<%# _rowcss %>"
AlternatingRowStyle-cssclass="<%# _alternatingcss %>"
OnRowUpdating="grdUsers_RowUpdating"
OnRowDeleting="grdUsers_RowDeleting"
OnRowCancelingEdit="grdUsers_cancelEdit"
autogeneratecolumns="false"
allowsorting="true"
AllowPaging="true"
EmptyDataText="No users..."
pagesize="<%# PageSizeForBoth %>"
runat="server">
<!-- ...columns... -->
</asp:GridView>
<asp:Button
id="btnAllDetails"
onclick="btnAllDetails_clicked"
text="Full Info"
runat="server" />
<asp:GridView
DataKeyNames="UserName"
HeaderStyle-cssclass="<%# _headercss %>"
RowStyle-cssclass="<%# _rowcss %>"
AlternatingRowStyle-cssclass="<%# _alternatingcss %>"
id="grdAllDetails"
visible="false"
allowsorting="true"
EmptyDataText="No users in DB."
pagesize="<%# PageSizeForBoth %>"
runat="server" />
<asp:Button
id="btnDoneAllDetails"
onclick="btnAllDetails_clicked"
text="Done."
Visible="false"
runat="server" />
</asp:Panel>
しかし、最初の2つのコントロール(GridViewコントロールgrdUsersとボタンbtnAllDetails)内のイベントのどれも、単に私がデバッガでこれを確認した、発生しません。彼らがaspxのページでうまく発生した場合、ascxに移動するとなぜ彼らは死ぬのですか? aspxの中
私のコードは以下のようになります。
<div class="admin-right">
<asp:ScriptManager ID="sm1" runat="server" />
<h1>User Management</h1>
<div class="admin-right-users">
<asp:UpdatePanel ID="up1" runat="server">
<ContentTemplate>
<cm1:CustomMembership
id="showUsers"
PageSizeForBoth="9"
AlternatingRowStylecssclass="alternating"
RowStylecssclass="row"
DataSource="srcUsers"
HeaderStylecssclass="header"
runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
</div>
感謝。
コメント誤ってフォーマットされたaspxのために申し訳ありません... StackOverflowは前に私のdivsをmangled。 – PhrkOnLsh
私は幾分それを追跡しました。私のページは何らかの理由で、Page_Loadを2回呼び出す、1回ポストバックする、そうでないと思われます! システムが1つのユーザーコントロールに2つのポストバックを投げる理由は何ですか? – PhrkOnLsh