我不是初学者,但越想这个问题,越为没有找到优雅的解决方案而苦恼。
在编写一个 C# .NET 网站时,我意识到我需要在不同的页面中使用多个组件,它们具有或多或少相同的功能,我想找到一种方法来编写它们一次然后重用。
例如,我在多个页面中使用的搜索框或多个 GridView。 这个“组件”是由几个 ASPX 控件、方法,也许还有一些 JavaScript 等构建的。 它们太复杂而无法复制,而且太具体而无法创建为控件。
您认为编写重用此类元素的最佳方法应该是什么。 这些是我到目前为止找到的解决方案,每个都有自己的缺点:
iframe - 事实上,它的所有问题对我来说都很好(对于搜索框)。我写了一个包含所有搜索行为的 aspx/cs 页面(这很复杂)- 然后在每个我想要这个搜索框的页面上,我添加了一个 iframe。
母版页 - 我发现这个非常棘手。我发现您可以编写嵌套母版页,但我不知道这对我有什么帮助。母版页方法 - 将子页设置为第一页(调用其 parent 版)。但就我而言,我有包含子组件的主页。
3.UpdatePanel - 我可以使用 UpdatePanel - 并编写一个共享函数,用所需的组件和代码填充它。好的,这可能行得通,但是代码很难维护(您需要使用 C# 手动编写所有组件)
有什么想法吗?我错过了任何微不足道的解决方案吗?
最佳答案
IFrame 不是任何组件组合和重用问题的解决方案。
MasterPages 是与您的问题无关的高级组合工具。
再次强调,UpdatePanel 不是可重用的解决方案。
组成一个UserControl或冲一壶咖啡并学习写 ServerControl .
关于c# - aspx 可重用组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2284097/