2012-02-18 3 views
1

.aspx 파일에서 내 .cs 파일의 변수 또는 속성에 액세스하려고했지만 행운을 얻지 못했습니다. 나는 여기에 여러 스레드를 쳐다 보았지만 여전히 운이 없었지만 모두 시도했다. 여기에 시나리오가 있습니다.ASP.NET - .aspx 페이지의 변수 사용

<asp:TemplateField HeaderText="User Name" ItemStyle-Width="10px"> 
    <ItemTemplate> 
     <asp:Label ID="lblWebLogin" runat="server" Text='<%#Eval("WebLogin") %>'></asp:Label> 
    </ItemTemplate> 
    <EditItemTemplate> 
     <asp:TextBox ID="txtWebLogin" runat="server" Text='<%#Eval("WebLogin") %>'></asp:TextBox> 
     <asp:RequiredFieldValidator ID="rfvEditWebLogin" runat="server" 
      ControlToValidate="txtWebLogin" Display="None" ErrorMessage='<%= this.LoginRequired %>'></asp:RequiredFieldValidator> 
    </EditItemTemplate> 
    <FooterTemplate> 
     <asp:TextBox ID="txtWebLogin" runat="server"></asp:TextBox> 
    </FooterTemplate> 
</asp:TemplateField> 

내가 리터럴 문자열로 ErrorMessage가를 설정하고 작동하는 것을 볼 수 있기 때문에 노력하고 폼에서의 ValidationSummary 컨트롤이 있습니다 : 나는 텍스트 상자와 GridView 컨트롤과 한 행에서의 RequiredFieldValidator를 가지고있다. 왜 작동하지 않습니다에 관한

public string LoginRequired 
{ 
    get { return "Error, please try again"; } 
} 

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
     BindDataToGrid(); 
} 

private void BindDataToGrid() 
{ 
    DataTable dt; 
    SqlCommand sc = new SqlCommand(); 
    DAL oDAL = new DAL(DBInformation.Instance.CurrentEncodedConnectionString, DBInformation.Instance.ConnectionTimeout); 

    //Get User Information. 
    sc.CommandText = Constants.StoredProcedureNames.GetUsers; 
    dt = oDAL.SPDataTable(sc, "AllUsers"); 
    gvUsers.DataSource = dt; 

    foreach (DataRow dr in dt.Rows) 
     lUser.Add(new User()); 

    gvUsers.DataBind(); 
} 

아이디어 :

여기 내 .cs의 코드는?

+0

<%= %> –

+0

OMG, 바보 같아요. anks. 대답을 게시 할 수 있도록 표시해주세요. – Robert

+1

nuux의 대답도 정확하므로 받아 들일 수 있습니다. :) –

답변

2

변경 페이지로드에서이

ErrorMessage='<%= this.LoginRequired %>' 

ErrorMessage='<%# this.LoginRequired %>' 

에의

및 전화 DataBind() 당신이 Response.Write에를 수행 ErrorMessage가 <%# %> 바인딩하지 안

protected void Page_Load(object sender, EventArgs e) 
{ 
if (!IsPostBack) 
    { 
    DataBind(); 
    BindDataToGrid(); 
} 
} 
관련 문제