在ASP.NET中保持多个用户控件的状态

时间:2011-01-07 13:28:31

标签: asp.net

我正在生成UserControl的实例,并将它们放在UL中。在我的UserControl中,有一个带有事件的按钮。我想问一下如何保持我生成的UserControls的状态,以便它们在回发后保留在页面上并捕获它们的事件。

For i As Integer = 0 To lstFoo.Count - 1     
  Dim liFoo As New HtmlGenericControl("li")
  Dim ucMyFoo As ucFoo = LoadControl("userControls/ucFoo.ascx")

  liFoo.Controls.Add(ucMyFoo)   
  ucMyFoo.DoSomething()
  ulFoo.Controls.Add(liFoo)
Next

1 个答案:

答案 0 :(得分:1)

听起来好像在帖子上,你没有运行上面列出的逻辑。您是否只在GET请求上运行上述代码?无论是GET还是POST,您都可以确保它在Page_Load中执行。

另一种方法是编写一个UL Web用户控件,该控件具有添加内置ucFoo.ascx控件的逻辑。然后只需将此UL Web用户控件(ascx)包含在您的webform中。

这将使您的生活更轻松,因为这个新的Web用户控件将始终在页面上,并且您不会动态添加控件。

相关问题