盲目地调用公共方法(C#)

时间:2012-04-25 18:05:19

标签: c# asp.net public-method

好的,很奇怪。我有许多带有转发器的用户控件,转发器的布局在所有控件中都是相同的,并且它们都有公共可用的bindData()方法。

我想知道,我可以设置另一个用于分页的用户控件而无需指定父控件吗?

我能够做到以下几点:

((controls.specificuserControlClass)Parent).bindData();

哪一切都很好 - 但是我需要在寻呼机中指定specificuserControlClass,如果你明白我的意思,就需要“每个转发器”吗?

我可以盲目地从儿童控制中致电Parent.bindData()吗?我“知道”该方法存在(或者会构建检查以确保),但Visual Studio并不满意,因为它不知道该方法。

1 个答案:

答案 0 :(得分:6)

为什么不让控件全部实现特定的界面?

 public interface IBindData
 {
      void bindData();
 }

然后,您只需:

((IBindData)Parent).bindData()

它应该适当地调用每个控件的方法。