![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Kefir |
|
||||
|
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
Привет всем. не знаю куда запостить. Это вопрос про ВПФ.
Есть TabControl. При нажатии на кнопке [ИКС] создаётся новый TabItem и в контент ему суётся контрол из плагина. примерно выглядит так:
вот. этот таб можно закрыть и снова нажать на кнопку [ИКС]. Так вот при втором нажатии мне выдают очень милый эксепшн, а точнее вот он:
ну я понял смысл - мол, ты уже присвоил selectedPlugin.UIObject другому контролу - пока не отсоеденишь - фиг тебе. так вот вопрос, собственно, простой - КАК мне его отсоединить? RemoveLogicalChild - только у главного класса окна MainWindow (даже его попробовал поюзать, правда без надежды). Пробовал ставить контент табитема в null - тоже никак. Что делать-то? |
||||
|
|||||
| ZMaximI |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 251 Регистрация: 18.5.2004 Где: Украина, г. Харьк ов Репутация: нет Всего: -1 |
А Dispose() не пробовал ?
-------------------- <удалено администрацией форума> |
|||
|
||||
| Kefir |
|
|||
|
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
я бы с радостью, только нету Dispose().
|
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
Попробуй
Давно не видел, чтобы на форуме постили красивый код |
|||
|
||||
| Kefir |
|
|||
|
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
Exception, видишь ли, проблема в том, что RemoveLogicalChild - protected метод, полученный от предка FrameworkElement, соответственно фигушки я его заюзаю у табконтрола. У моего виндоу этот метод можно юзать только постольку поскольку я его наследую (и где-то там в его предках есть этот самый FrameworkElement).
PS спасибо за комплимент. приятно |
|||
|
||||
| Idsa |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 14 Всего: 62 |
Kefir, Гугл вот что советует:
|
|||
|
||||
| Kefir |
|
|||
|
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
Idsa, ой, видел я эту тему где-то на форуме когда сам гуглил. и фразу эту видел. я вообще так понял что там посоветовали пользовать RemoveLogicalChild не у самого окна, а у парента. у меня парент TabItem. И заюзать RemoveLogicalChild у него я не могу по причинам, приведённым в моём предидущем посте:
|
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
Я тоже, когда гуглил, попал на этот потс, потому и посоветовал. Не заметил, что этот мембер protected.
Попробуй заюзать метод RemoveAt (index). По крайней мере, во всех найденных мной примерах используется именно он. |
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 25 Всего: 173 |
Могу предложить маленький трюк. Класть UIObject не непосредственно в TabItem, а на какую-нибудь разновидность Panel, предварительно в этот TabItem вложенную. И при удалении делать Children.Clear(), при этом наш контрол гарантированно отцепляется от родителей. Получается жуть вроде:
Но ничего лучше в голову не пришло. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [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. |