【问题标题】:Make a UserControl-derived class non-public将 UserControl 派生类设为非公开
【发布时间】:2013-10-15 08:13:16
【问题描述】:

在我的 WPF 应用程序中,现在有一个由 XAML 文件和 C# 代码隐藏文件组成的 UserControl 派生类。这个类在公共财产中使用了我的另一个类(它不应该是公共的)。默认情况下,Visual Studio 总是将新的控件类生成为公共的。

public partial class MyControl : UserControl
{
    public MyType SomeProperty { get; set; }
}

class MyType { ... }

这会导致编译器错误 CS0053(访问不一致),因为 MyType 的可见性低于 MyControl.SomeProperty。实际上,控件类完全没有必要公开,因为这不是一个类库,而是一个普通的应用程序。而且我不希望我的其他课程公开,以便混淆仍然会抓住它。去掉控件类中的“public”是没有效果的。

我现在能做什么?

【问题讨论】:

    标签: c# wpf user-controls


    【解决方案1】:

    只需将属性设为非公开,例如internal.

    【讨论】:

    • 简单有效!
    猜你喜欢
    • 2015-04-16
    • 2013-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-23
    • 2013-12-04
    相关资源
    最近更新 更多