2013-10-22 66 views
0

我在線閱讀,如果我想要內聯數據綁定表達式,我必須調用Page_Load函數上的數據綁定方法。但是,由於某種原因,我無法訪問後臺代碼中的按鈕控件。我可以訪問除表單以外的所有其他按鈕。下面是一些代碼:無法DataBind asp:按鈕

<asp:Button ID="CartButton" runat="server" Text="View Cart <%# Session["Counter"].ToString() %>" OnClick="List_Items" /> 

protected void Page_Load(object sender, EventArgs e) 
    { 
     CartButton.DataBind(); 
    } 

這給了我,「CartButton」不在當前情況下存在的錯誤。沒有DataBind方法調用運行頁面返回一個錯誤,告訴我,我

服務器標記的格式不正確。

感謝您的幫助!

+0

你可以過去更多的包裝aspx代碼?看起來你拼錯了頁面的某個地方。 – DraggonZ

+0

對於數據綁定,你應該首先指定數據源.. – zxc

回答

1

嘗試這個

<asp:Button ID="Button1" runat="server" Text='<%# Session["Counter"].ToString() %>'/> 

也許這會幫助你。

問候

AB維亞斯

+0

我認爲這工作它給了我一個空引用異常,但我認爲這與Session [「Counter」]有關。這是否意味着我無法沿着服務器指令添加文本?我應該如何添加我想要的文字? – Justin

+1

我使用了'<%#「Cart」+ Session [「Counter」]。ToString()%>'感謝您的幫助! – Justin

1

我認爲在這種情況下,你不需要databinging。嘗試做這樣的事情,而不是:

protected void Page_Load(object sender, EventArgs e) 
{ 
    CartButton.Text = String.Format("View Cart {0}", Session["Counter"].ToString()); 
} 

<asp:Button ID="CartButton" runat="server" OnClick="List_Items" />