3

我一直在使用 C# 和 .NET 4.5 在我的 Windows 窗体应用程序中使用 resgen.exe 生成一个 StronglyTypedClass 文件

根据语法,我可以将 StringResources 类设为 public,但 Constructor 仍然是内部的。

resgen inputFilename [outputFilename] /str:language[,namespace,[classname[,filename]]] [/publicClass]

当我提出这个参数 [/publicClass] 时,它只是将类设为公共,但构造函数仍然是内部的。

internal StringResources() {}

请提出建议,如何实现这一目标。

4

1 回答 1

2

您的队友很可能希望公开该构造函数,因为他想使用 xaml 中的资源。

只需在同一个程序集中创建一个类,它继承资源文件并公开一个公共构造函数,然后改用这个类。

public class ResourcesProxy : Properties.Resources
{
    /// <summary>
    /// resolves the problem of internal constructor in resources.designer.cs
    /// in conjunction with xaml usage
    /// </summary>
    public ResourcesProxy() : base()
    {
    }
}
于 2013-04-23T16:12:50.827 回答