WebControl的扳机式的方法,不会触发
-
12-09-2019 - |
题
这是我的情景:点击 我有一个占位符的页面。页面增加了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的一切,并在作为视图状态被保存在最后请求的顺序...棘手棘手
其他提示
虽然动态添加控件,还必须要连接保存按钮每次的情况下(即,如果正在动态生成的保存按钮)。
不隶属于 StackOverflow