我无法找到名为'repScore'的转发器控制器,它位于FormView控制器内。
这是我的代码:
<asp:FormView runat="server" id="fwHotelDetails" DataKeyNames="id" OnDataBound="fwHotelDetails_DataBound" >
<ItemTemplate>
// (..) some code here which outputs some data
<asp:Repeater runat="server" id="repScore">
<ItemTemplate>
<span class="item"> <%# Eval("criteria") %>:</span>
</ItemTemplate>
</asp:Repeater>
</ItemTemplate>
</asp:FormView>
这是我背后的代码:
protected void fwHotelDetails_DataBound(object sender, EventArgs e)
{
Repeater rep = (Repeater)fwHotelDetails.FindControl("repScore");
rep.DataSource = this.dtCriteria;
rep.DataBind();
}
我做错了什么?
答案 0 :(得分:2)
我看不到formView引发DataBound事件,你不忘记声明事件处理程序吗?
答案 1 :(得分:1)
我还不能评论......所以这就是:
基本上它意味着它无法访问您声明的方法......
将“私人”更改为“受保护”(或“内部”或“公共”,取决于您的需要)应该有所帮助。