2

在 Visual C# 2008 中,我有一个包含两个项目的解决方案。

第一个项目包含 Form1,它显示一个 Label,其中 Text 设置为 Properties.Resources 中的字符串,如下所示:

label1.Text = Properties.Resources.MY_TEXT;

在第二个项目中,我从第一个项目中“添加为链接”这个 Form1。我想显示这个表单,所以它的显示与从第一个项目调用时相同。它应该显示一个标签,其中包含在第一个项目中定义的文本 Properties.Resources.MY_TEXT。

不幸的是,第二个项目没有构建并出现以下错误消息:“名称'属性'在当前上下文中不存在”。

有什么办法可以解决这个问题吗?我尝试将第一个项目中的“Resources.resx”文件“添加为链接”,但没有帮助。

编辑:我发现如果我在 Project2 中添加 Project1 作为参考,一切正常。我还必须将 Project1 资源中的访问修饰符从内部更改为公共。这是正确的方法吗?

谢谢你,彼得

4

2 回答 2

2

是的,这是正确的方法(从另一个项目中引用一个项目)。您可能希望应用的一种模式是拥有一个包含所有参考/查找/设置的项目。然后,您无需解决 UI 项目之间的依赖关系。

您公开资源的方法是正确的。

您还询问了有关组合程序集的问题。看看ILMerge 工具

于 2008-11-16T07:00:55.947 回答
0

您应该添加“使用 MyOtherProjectNamespace”,以便您可以访问其属性

于 2008-11-15T20:15:30.883 回答