2

我在两个引用的程序集之间存在命名空间冲突:

即,我引用 Foo.A.Foo 和 Foo.Bar,所以当我说我想要 Foo.Bar.Control 时,VS 试图找到 Foo.A.Foo.Bar.Control

我可以通过添加新的 global:Foo.Bar.Control() 来调整 Designer.cs 代码,但只要我更改任何内容,VS 就会切换回来。

我知道直接将别名添加到引用中有些东西,我已经尝试过但没有设法找到正确的组合(内联别名、使用别名、引用别名)。

帮助?

4

2 回答 2

0

“外部别名”可能是你的意思,但我不确定设计师会用它做什么,不幸的是......

我什至不确定这就是你所追求的 - 这通常适用于来自不同程序集的具有相同名称的两种类型。

您可以使用 using 指令编写命名空间别名,例如

使用 FooControl = Foo.Bar.Control;

但同样,设计师要重写你的代码......

于 2009-08-11T09:56:01.147 回答
0

好的,这不是答案,但这是我找到的解决方法:

namespace FooBar
{
    class FooBarControlHack : Foo.Bar.Control { }
}

所以我可以在 Designer.cs 中执行以下操作:

this.fooBarControl = new FooBar.FoorBarControlHack();
于 2009-08-18T07:18:42.667 回答