Конфликт псевдонимов и пространства имен в Visual Studio Designer

2

У меня есть конфликт пространства имен между двумя ссылочными сборками:

i.e., я ссылаюсь на Foo.A.Foo и Foo.Bar, поэтому, когда я говорю, что хочу Foo.Bar.Control, VS пытается найти Foo.A.Foo.Bar.Control

Я могу свернуть код Designer.cs, добавив новый глобальный: Foo.Bar.Control(), но как только я что-то изменил, VS переключается обратно.

Я знаю что-то о добавлении псевдонимов непосредственно к ссылке, я пробовал, но мне не удалось найти правильную комбинацию (встроенный псевдоним, используя псевдоним, ссылочный псевдоним).

Справка

Теги:
visual-studio
alias
designer

2 ответа

0
Лучший ответ

ОК, это не ответ, но это то, что я нашел для обходного пути:

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

Поэтому я могу сделать следующее в Designer.cs:

this.fooBarControl = new FooBar.FoorBarControlHack();
0

"extern alias" может быть то, что вы имеете в виду, но я не уверен, что дизайнер сделает с ним, к сожалению...

Я даже не уверен, что вы после этого - обычно для двух типов из разных сборок с тем же именем.

Вы можете написать псевдонимы пространства имен с помощью с помощью директивы, например

с помощью FooControl = Foo.Bar.Control;

но, опять же, дизайнер перепишет ваш код...

  • 0
    Я не хочу, чтобы это было ответом, (всхлип)!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню