【问题标题】:Hide some inherited methods from intellisense从智能感知中隐藏一些继承的方法
【发布时间】:2014-06-30 14:11:01
【问题描述】:

我创建了一个用户控件。让我们想象一下这段代码:

public class MyUserControl : UserControl
{
  Button button1;
  Button button2;

  //...
}

使用该 UserControl,我可以单击其中一个按钮,这会触发一些事件(Button1ClickedButton2Clicked)。

现在有了 UserControl,还有一些其他事件,但我从不使用像 MouseMove 或拖动(DragEnterDragLeaveDragOver,...)这样的事件。 Intellisense 会在我的 UserControl 中显示大量无用的事件。

有隐藏这些继承事件的常用方法吗?我的主要原因是智能感知,还有文档(XML-summaries)。

【问题讨论】:

  • 您是否只是想限制智能感知向您显示的内容?你为什么要这样做?
  • 不,只有当它是一个接口时,你才能选择通过显式实现来隐藏它们,但现在你被底层声明所困。
  • fedab,我已将您帖子的标题更改为“隐藏” - 请查看编辑是否符合您的目标(看起来智能感知是唯一的问题),否则请随时回滚更改(或如果需要智能感知改变和其他东西,甚至问新问题)。请注意,它可能已经在stackoverflow.com/questions/9086136/…
  • Intellisense 显示 almost 一切,您可能想使用什么。虽然选择太多了,但很快您就会记住名称,并在使用它来简单地自动完成时输入起始符号甚至单词。出于浏览目的(例如“此控件具有哪些方法”之类的问题),最好使用 MSDN。

标签: c# user-controls intellisense


【解决方案1】:

正如 cmets 所揭示的那样:不,没有办法从 Intellisense 中隐藏继承的事件。

这也可能是一个糟糕的决定。如果有办法,如果您在实施时忘记取消隐藏它怎么办?没有人会看到那个方法,但它会在那里,如果你输入它,它就会起作用。那会有点奇怪。

【讨论】:

    猜你喜欢
    • 2011-04-04
    • 1970-01-01
    • 2015-12-26
    • 1970-01-01
    • 2012-10-02
    • 1970-01-01
    • 1970-01-01
    • 2011-04-18
    • 1970-01-01
    相关资源
    最近更新 更多