asp.net usercontrol开发/实现

时间:2012-03-14 12:27:51

标签: asp.net user-controls

我开发了一个ASP.NET用户控件,其实例可能会在一个页面上多次出现。如果没有太多的应用程序细节,当任何一个实例的值发生更改时,所有其他实例都需要刷新。目前,为了实现这一点,我要求使用页面实现一些方法,这些方法遍历表单上的每个控件,找到我的用户控件的所有实例,并在每个控件中调用Refresh方法。     从功能上讲,它的工作非常完美。但是,我想强制使用页面的开发人员完全按照我的要求实现这两种方法。我可以让他们实现一个接口,但这并没有提供每个方法的功能。或者我可以让它们扩展一个抽象类,但在任何一种情况下(接口或抽象类)我怎么能强制它们继承?如果消费页面没有扩展必要的抽象类,我需要一些会触发编译器错误的东西。有任何想法吗?

感谢。

1 个答案:

答案 0 :(得分:0)

您可以在C#中使用“abstract methods”或在VB.NET中使用“MustInherit”关键字来强制执行。

在您的特定情况下,您希望开发人员基本上实现“您的”代码以强制刷新,这是我不希望委托的事情。在不了解太多细节的情况下,我很想使用“Observer”设计模式,或者可能使用单独的对象作为控制器或者甚至将控制/发布代码应用于网页的“Mediator” 。这是'Observer' in ASP.NET的实际例子。

HTH