从aspx页面调用方法后面的代码
我有一个像这样的图像标签
<asp:Image ID="ImgProduct" runat="server" ImageUrl='' />
并在代码后面我有一个像这样的方法
protected string FormatImageUrl(string s) { return "image"+s; }
当我朗读代码时,我期待带有src =“image10”的HTML图像标记将呈现。
但为什么没有发生? 任何线索?
我在asp.net。 不是mvc
在aspx页面中
在cs文件中使用此
protected void Page_Load(object sender, EventArgs e) { ImgProduct.DataBind(); } protected void ImgProduct_DataBinding(object sender, EventArgs e) { ImgProduct.ImageUrl = "Image pathe + name"; }
<%# .. %>
仅在数据绑定期间应用。 一种解决方案是手动调用DataBind()
尝试
protected void Page_Load(object sender, EventArgs e) { ImgProduct.DataBind(); }
您必须调用Page.DataBind()
或Control.DataBind()
。 否则,将不会评估<%#%>块。
为什么所有的数据绑定内容都只是尝试下面的内容。
protected void Page_Load(object sender,EventArgs e) { if(!IsPostBack) { ImgProduct.ImageUrl = FormatImageUrl("10"); } } protected string FormatImageUrl(string s) { return "image"+s; }
我不明白,它对你进行数据绑定或在代码后面编写代码有什么不同。 保存几个击键?? 在Codebehind上观察Object而不是Data Binding表达式模型也会非常容易