2

我以前没有在 ASP.NET 中看到过这个实现,但我正在考虑一个看起来和行为像这样的 UI:

概念概述

  • 加载了一个 TabControl,第一个选项卡包含一个网格
  • 双击行时,将创建一个带有记录详细信息的新选项卡
  • 选项卡/记录详细信息的内容由用户控件创建
  • 可以创建许多选项卡,因此将创建用户控件的许多实例

我知道 ASP.NET 将为我重命名我的 ( runat="server") ID,并且我可以使用 jQuery 或 ASP.NET 服务器端代码来处理 ID...我的担忧是:

  • 如何要求 ASP.NET 为我的用户控件的每个第 N 个实例生成一个唯一 ID(在占位符中呈现)
  • 我如何实际创建该控件的额外实例?
  • 我还需要记住什么?

由于我不想要回发,我正在考虑基于 ComponentArt 的Callback Control实现我的实现,并使用 ASP.net 用户控件来实现此效果。这将允许我做大多数需要回发的事情,但不会刷新页面上的所有元素......只是包含用户控件的部分。话虽这么说,我并不依赖于特定的实现。

4

1 回答 1

1

您应该查看 Page.LoadControl 方法。它工作得很好,据我记得你在页面上放置了占位符并将控件加载到 PlaceHolders 中,这就是你控制 id 的方式。

使用这种方法效果不佳的一件事是,当您的控件引发 Page 对象必须处理的事件时。如果您的控件是独立的,那么您应该没有问题。

这可能会帮助您入门: http: //www.codeproject.com/KB/aspnet/LoadingUSerControl.aspx

于 2010-08-12T14:18:40.230 回答