![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Kefir |
|
||||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
Привет! И снова я со своими юзерконтролами.
Система загрузки: Core.cs ищет плагины в определённой директории. Затем на окне можно выбрать плагин и нажать "Run plugin":
как видно из кода - плагины имеют свой UIObject, который и показывается юзеру. с одним плагином возникла проблема. при нажатии на "Run plugin" он выдаёт исключение:
я, честно говоря, не понимаю к чему бы это. плагин PluginERDCatalogue берёт контрол CatalogueViewer из сборки PluginERDCatalogueUI. и на ините тупо делает this._CatalogueViewer = new CatalogueViewer(); всё. это и есть UIObject плагина. также стоит отметить, что если создать WPF приложение и туда подключить PluginERDCatalogueUI напрямую, поставить в окно CatalogueViewer, то всё работает прекрасно. Я просто никак не могу понять что от меня хотят этим эксепшном. Опять же - гугл молчит как партизан (не совсем, конечно, но молчит) Это сообщение отредактировал(а) Kefir - 17.8.2007, 10:50 |
||||
|
|||||
ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 47 Всего: 149 |
Kefir, надеюсь, такого ты не видел:
http://geekswithblogs.net/lbugnion/archive.../07/108214.aspx http://forums.microsoft.com/MSDN/ShowPost....94&SiteID=1 ![]() |
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
по первой ссылке - видел, странное решение. на всякий случай таки проверил shadow copy - оно отключено.
по второй ссылке - тоже видел. сидел с час, пытался понять, что же хотели сказать авторы постов и что мне надо покурить чтобы понять смысл их слов. насколько я в целом понял - речь о том, что если в сборке А у меня есть класс MyClass, наследующий от какого-то класса BaseClass, то в сборке Б я не смогу ничего унаследовать от класса MyClass. если да, то, по-моему, это ко мне не относится. У меня есть сборки MainApp, Plugin, PluginUI. в PluginUI есть класс UI : UserControl, в Plugin есть класс Plugin : IPlugin, который содержит pluginUI = new UI(); то есть у меня никаких наследований, описанных в той теме. вообще, я уже искал на мсдн, live.com и гугле. Всё что там по этому поводу есть - прочитано и перечитано. Так что сейчас я надеюсь лишь на знания форумчан, а не на поисковики. |
|||
|
||||
Kefir |
|
|||
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
так. методом тыка вроде даже устранил. в PluginERDCatalogueUI было два элеметна - один это сам контрол CatalogueViewer и был интерфейс ICatalogueItem. так вот если удалить этот самый интерфейс, то всё прекрасно получается.... не понимаю почему так происходит, но без него всё идёт как по маслу...
|
|||
|
||||
Exception |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
Во-первых, установи Build Action для твоего CatalogueViewer.xaml в Page (и вообще, поэкспериментируй с ним). Во-вторых, посмотри код внутри CatalogueViewer.InitializeComponent (). Он должен выглядеть так:
Это сообщение отредактировал(а) Exception - 17.8.2007, 13:00 |
|||
|
||||
namespace |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 70 Регистрация: 4.7.2006 Репутация: нет Всего: нет |
неужто нет решения этой проблемы? как же быть копипастить? P.S. народ говорит есть два варианта: 1. вместо наследования сделать композицию 2. MyClass сделать code behind Это сообщение отредактировал(а) namespace - 17.2.2010, 17:14 |
|||
|
||||
namespace |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 70 Регистрация: 4.7.2006 Репутация: нет Всего: нет |
подтверждаю code behind работает, на том и остановился...
|
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |