![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Kefir |
|
||||
|
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
Итак, проблема такова:
1. Есть UserControl (назовём его MyUserControl), который показывает информацию (не суть какую). 2. Для присвоения информации у контрола есть проперти:
Вывод - надо создавать этот контрол в отдельном треде, а в главном треде показывать табличку "Подождите". Итак.
собственно говоря вот и проблема (на строке 32 кода, строки 30-31 - описание проблемы). созданный в другом треде контрол недоступен из главного треда. что делать? мои мысли были таковы - создавать контрол в главном треде, а присваивать проперти уже в отдельном, так ведь у меня нет специального поля для контрола, а значит я не смогу вызвать Invoke или ещё что-то в этом роде. В общем, помогите, люди добрые. Это сообщение отредактировал(а) Kefir - 20.9.2007, 16:50 |
||||
|
|||||
| Kefir |
|
|||
|
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
небольшой апдейт.
1. вариант создать с UI тереде и присвоить проперти из другого не проходит, ибо делается это через Invoke, который блокирует UI тред. Увидел слово async в описании BeginInvoke и всё равно сразу сник, ибо это совсем не то что надо. Вывод - это невозможно, потому что объект всё равно принадлежит UI треду, а значит и присвоение проперти будет проходит в UI треде. 2. вообще смысл всей этой проблемы в том, что я хочу показать "Подождите" пока грузится контрол. так вот я смотрел на это очень однобоко. решение очень простое - создать ещё одно окно и показывать его примерно так:
Вот и всё. До сих пор не понимаю как это я сразу не догадался. Вывод: 1) создать контрол в отдельном треде невозможно... 2) ...и ненужно, ибо вышеописанный способ решает эту проблему намного проще. Вопрос помечаю решённым. Добавлено через 1 минуту и 16 секунд ЗЫ А вообще мне нравится как я тут создаю темы и сам себе потом пишу ответы в последнее время (по крайней мере относительно WPF и подобного). Это сообщение отредактировал(а) Kefir - 21.9.2007, 15:25 |
|||
|
||||
| thomas |
|
|||
![]() Доцент... почти ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1385 Регистрация: 3.10.2006 Где: " Сказочное королевство" Репутация: 6 Всего: 65 |
Kefir,
Так с WPF ни кто практически не работает. А этот контрол, я так понимаю, ты хотел на своем сайте использовать? -------------------- Крепко жму горло, искренне ваш Thomas. (С)vingrad Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну! Проблемы негров шерифа не волнуют. |
|||
|
||||
| Kefir |
|
|||
|
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
я же не в упрёк форуму сказал. просто так, к слову
а под веб я не нишу. виндовское приложение у меня. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [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. |