我想调用一个函数将数据绑定到Repeater。我是否需要设置此控件或Repeater .DataBind()的dataSource属性。
<asp:Repeater ID="RepeaterDays" runat="server">
<ItemTemplate>
<ul>
<asp:Label ID="lblDays" runat="server" Text='<%#ChandanIdiot()%>'></asp:Label>
</ul>
</ItemTemplate>
</asp:Repeater>
我写了RepeaterDays.Databind(),但是没有调用该函数。
这没有显示任何内容。
答案 0 :(得分:9)
ChandanIdiot()是一个返回字符串的受保护函数吗?
protected string ChandanIdiot() {
return "test";
}
如果您想要实际进行一些数据处理,则必须包含一个参数:
protected string ChandanIdiot(object obj) {
return "test " + obj;
}
并且,假设您正在重新定位的对象上有一个名为“Name”的属性,您将拥有以下内容:
<asp:Label ID="lblDays" runat="server" Text='<%# ChandanIdiot(Eval("Name")) %>' />
答案 1 :(得分:3)
<asp:TemplateField HeaderText="Unit Price">
<ItemTemplate>
<%# ChandanIdiot( Eval("product_unitprice"))%>
<!--product_unitprice is table colomn name -->
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="TextBox4" runat="server" ></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
protected string ChandanIdiot(object ob) {
string typ = ob.ToString(); //selected value stored in ob
if (typ == "some function") {
//do somthing
}
return typ ; //value return to <%# ChandanIdiot( Eval("product_unitprice"))%>
}