这是我的情景:点击 我有一个占位符的页面。页面增加了dynimcally不同类型的控件(我们wan't显示一些数据 - 通过获取查询字符串或回发的ID,因为我们也有一个树)来此占位符结果。 所添加的控制所有,更多或更少的,包含一个文本框(显示元件的名称),复选框(显示元件的活动状态)和保存按钮时触发这个夏精内的方法。

我现在的问题是真的很明显: 因为我动态地添加控制(!和每一个条件:回发回发和),保存法所谓添加控件内部,不会炒 - 无论我做什么...

我很简单地笨获得特技:)

一些背后的场景的相关信息(工作流):

protected void Page_Load(object sender, EventArgs e)
{
    if (!this.Page.IsPostBack)
    {
        this.SelectedElement = SomeMagicMethod();
    }
}

protected void NodeSelected(object sender, TreeViewNodeEventArgs e)
{
    this.SelectedElement = SomeOtherMagicMethod();
}

protected override void OnLoadComplete(EventArgs e)
{
    // we have to take this life-cycle!
    if (this.SelectedElement!= null)
    {
        this.DisplayElement();
    }
}

private void DisplayElement()
{
    var UC = this.LoadControl(UCPath) as DataTypeUC;
    if (UC == null)
    {
        return;
    }

    UC.ID = EditCampaignFolderUCID;
    UC.SetData(this.SelectedElement);
    UC.DataBind();
    this.phContent.Controls.Add(UC);
}
有帮助吗?

解决方案 2

诀窍是:在reinstatiate的OnInit的一切,并在作为视图状态被保存在最后请求的顺序...棘手棘手

其他提示

虽然动态添加控件,还必须要连接保存按钮每次的情况下(即,如果正在动态生成的保存按钮)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top