2017-12-12 4 views
0

asp 컨트롤이있는 기본 페이지 (초기 방문 페이지)가 있으며 모든 것이 잘 작동합니다. 나 또한 하나의 asp 버튼 컨트롤 (나는 포스트에 대해 단순화 한)을 가진 Admin 페이지를 가지고있다. 둘 다 Site.Master 페이지의 양식 요소에 래핑됩니다. 내 관리자 페이지에서 버튼 클릭 이벤트가 발생하지 않습니다. ASP.NET Webform OnClick 이벤트가 제대로 실행되지 않습니다.

  1. 는 기본의를 Page_Load 진행됩니다

    페이지 코드

    <%@ Page Title="Admin1" Language="C#" MasterPageFile="~/Site.Master" 
    AutoEventWireup="true" CodeBehind="Admin1.aspx.cs" 
    Inherits="HPRMWebClientReporting.Admin1" %>   
    
    <asp:Content runat="server" ID="AdminContent" 
        ContentPlaceHolderID="AdminContent"> 
        <asp:Button ID="ButtonGo" runat="server" Text="Button" Width="111px" 
        OnClick="ButtonGo_Click" /> 
    </asp:Content> 
    

    코드 여기

    public partial class Admin1 : System.Web.UI.Page 
    { 
        protected void Page_Load(object sender, EventArgs e) 
        { 
         if (!IsPostBack) 
         { 
    
         } 
        } 
    
        protected void ButtonGo_Click(object sender, EventArgs e) 
        { 
         this.Context.Items["Msg"] = "It worked!!!."; 
         Server.Transfer("MessagePage.aspx"); 
        } 
    } 
    

    뒤에 무슨 일한다 : 여기 내 버튼 이벤트 뒤에 페이지 코드/코드입니다 페이지
  2. Site.Master 페이지의 Page_Load를 통과합니다.
  3. 내 사이트를 새로 고침하고 버튼을 클릭하면 내 클릭 이벤트 또는 내 관리자 페이지를 Page_Load 가지 않는 어떤 시점에서 기본 페이지

을 보여줍니다? 버튼 클릭은 MessagePage 페이지로 이동해야합니다.

이것은 나를 미치게합니다. 나는 운이없는 버튼에 대해 유효성 검사를 false로 설정하려고 시도했습니다. 어떤 아이디어?

참고 : 또한 어쩌면 이는 내가 잘못하고있는 것을 누군가가 결정하는 데 도움이 될 수 있습니다. 페이지 코드를 변경하여 MasterPageFile Site.Master를 사용하지 않고 방금 자체 폼 요소에 단추를 래핑했지만 제대로 작동했지만 마스터 페이지를 사용하려는 방식으로 작동하지 않게했습니다.

+0

당신이하고있는 일에 대해 마스터 페이지를 사용해야합니다. –

답변

0

나는 더 이상 연구하지 않고서 왜 내가 확신 할 수는 없지만 작동하는 것을 발견했다. 내 Site.Master 페이지와 내가 게시물에서 언급 한 양식 요소에서 액션 = "/"을 뽑았으며 이제는 내가 예상했던대로 내 컨트롤이 Admin 페이지에서도 작동합니다.

<form id="Form1" action="/" method="post" runat="server">  
    <asp:ContentPlaceHolder ID="HomeContent" runat="server"> 
    </asp:ContentPlaceHolder> 
    <asp:ContentPlaceHolder ID="ContactContent" runat="server"> 
    </asp:ContentPlaceHolder> 
    <asp:ContentPlaceHolder ID="AboutContent" runat="server"> 
    </asp:ContentPlaceHolder> 
    <asp:ContentPlaceHolder ID="AdminContent" runat="server"> 
    </asp:ContentPlaceHolder> 
</form> 
+0

괜찮습니다. 마스터 페이지의 양식은 다음과 같습니다.

+0

양식 요소를 확인해 주셔서 감사합니다. 나는 며칠 동안 이것을 주() 主에게있을 수 있다고 생각조차하지 않으면 서 고심하고 있었다. – JM456

관련 문제