ASP.NET嵌套FormView

时间:2011-05-14 12:27:31

标签: asp.net data-binding formview

我有这个HTML。

<asp:FormView ID="FormView1" runat="server" DataSourceID="SqlDataSource1">
    <asp:FormView ID="FormView2" runat="server" DefaultMode="Insert" DataSourceID="SqlDataSource2">
       <asp:TextBox runat="Server" Text='<%# Eval("Terms") %>'></asp:TextBox>
    </asp:FormView>
</asp:FormView>

上面的代码没有任何错误,但我希望从FormView1的SqlDataSource1而不是FormView2(SqlDataSource2)获取文本框中的术语。我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

您可以在子窗体视图中访问父formView DataSource值的值,就像您当前所做的那样。但是你还有另一种设定价值的方法。像..

protected void ChildFormWiew_DataBound(object sender, EventArgs e)
{
    if (ChildFormView.CurrentMode == FormViewMode.Edit)
    {
        TextBox txtTemrs = ParentFormView.FindControl("Terms") as TextBox;
        ((TextBox)ChildFormView.FindControl("Terms")).Text = txtTemrs.Text;
    }
}