我有一个内部有转发器的FormView。为了渲染ItemTemplate,我做了一个假数据源和数据绑定。 然后我用FindControl查找Repeater并执行另一个DataSource和DataBind。 所以在这种情况下,HardCodedData只是一个让我来租用FormView ItemTemplate的地方。
FormView1.DataSource = HardCodedData;
FormView1.DataBind();
Repeater r = ((Repeater)FormView1.FindControl("repeater1"));
r.DataSource = GetMyData();
r.DataBind();
有更好的方法吗?我可以让FormView租用而不给它假数据吗?或者我可以通过FormView DataSource传递转发器数据吗?
答案 0 :(得分:2)
由于转发器控件位于窗体视图中,因此您应该在窗体视图的事件 DataBound 中绑定此转发器控件,以便获得您想要获得的确切数据。将以下代码放在 FormView1_DataBound 事件中。
Repeater r = ((Repeater)FormView1.FindControl("repeater1"));
r.DataSource = GetMyData();
r.DataBind();
可能这个解决方案可以帮助你......