我有以下aspx代碼,我從後面的代碼調用方法。代碼隱藏方法的結果是不能在頁面中呈現。來自aspx的方法後面的調用代碼
<%@ Page Language="C#" AutoEventWireup="false" Src="LeftMenuSrce.aspx.cs" Inherits="LeftMenuSrce" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
<head>
<title>Home</title>
</head>
<body>
<asp:Table ID ="LeftMenuTable" runat="server">
<asp:TableRow>
<asp:TableCell ID="LeftMenuSrce" OnDataBinding="_getLeftMenuSrc"></asp:TableCell></asp:TableRow>
</asp:Table>
</body>
</html>
下面是我的CS代碼:
public class LeftMenuSrce : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TableCell LeftMenuSrce;
protected System.Web.UI.WebControls.Table LeftMenuTable;
protected void Page_Load(object sender, EventArgs e)
{
LeftMenuSrce.DataBind();
}
protected string _getLeftMenuSrc()
{
string leftMenu;
leftMenu = "LeftMenuNew.aspx";
return leftMenu;
}
}
即使我已經試過格,而不是ASP:表,但什麼也沒有工作。
<div>
<%#_getLeftMenuSrce()%>
</div>
任何解決此問題的線索?提前致謝。
請注意我已經提到下面的鏈接,但沒有任何幫助。
How to call a code-behind method from aspx page?
Call code behind method from aspx page
ASP.NET - Use variable in .aspx page
這不是'OnDataBinding'方法的工作方式。它不應該返回一個值,它必須有一個'EventArgs'參數,並且它應該處理正確分配值 - http://msdn.microsoft.com/en-us/library/system.web.ui.control .ondatabinding(v = vs.110).aspx?cs-save-lang = 1&cs-lang = csharp#code-snippet-1 – Luaan