![]() |
Модераторы: gambit, Kefir, Partizan |
![]() ![]() ![]() |
|
LectorSP |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 13.4.2006 Где: г. Минск Репутация: 1 Всего: 2 |
У меня такой вопрос, почему в обработчике события DoWork, я спокойно могу вызвать метод, который возвращает массив срок и передать его как результат работы нового потока , но не могу вызвать метод который создает и возвращает например TabItem? Как только в новом потоку появляеться строка типа TabItem item = new TabItem() поток возвращает ошибку типа "The calling thread must be STA, because many UI components require this." Подскажите или нужно делать через Thread? :
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже! |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
LectorSP, ну а почему бы не сделать через Thread?
-------------------- СУВ, Partizan. |
|||
|
||||
LectorSP |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 13.4.2006 Где: г. Минск Репутация: 1 Всего: 2 |
А как мен тогда из нового потока, который я создал, предать тот же TabItem, который сгенерился в новом потоке?
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже! |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
LectorSP, через Invoke() делегата
Это сообщение отредактировал(а) Partizan - 14.7.2008, 18:15 -------------------- СУВ, Partizan. |
|||
|
||||
LectorSP |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 13.4.2006 Где: г. Минск Репутация: 1 Всего: 2 |
а можно пару строчек код, если конечно не сложно : )
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже! |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
-------------------- СУВ, Partizan. |
|||
|
||||
LectorSP |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 13.4.2006 Где: г. Минск Репутация: 1 Всего: 2 |
не рарботает постоянно выдает вот это Exception has been thrown by the target of an invocation : (
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже! |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
LectorSP, показывайте свой код
Добавлено через 20 секунд а лучше весь sln сюда для экспериментов... Добавлено через 1 минуту и 24 секунды LectorSP, Exception has been thrown by the target of an invocation как правило означает что исключение произошло в конструкторе при создании объекта -------------------- СУВ, Partizan. |
|||
|
||||
LectorSP |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 13.4.2006 Где: г. Минск Репутация: 1 Всего: 2 |
Этот пример тоже не работает : (
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже! |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
LectorSP, я приводил пример для WinForms....
в вашем случае:
-------------------- СУВ, Partizan. |
|||
|
||||
LectorSP |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 13.4.2006 Где: г. Минск Репутация: 1 Всего: 2 |
да, в моем случае WPF - и там почему-то так не работает : (
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже! |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
LectorSP, =) вы Dispatcher не у того потока берёте )
Добавлено через 2 минуты и 37 секунд хотя может я и не прав... Добавлено через 8 минут и 27 секунд LectorSP,
-------------------- СУВ, Partizan. |
|||
|
||||
LectorSP |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 13.4.2006 Где: г. Минск Репутация: 1 Всего: 2 |
Дело в том, что если не передавать контрол, который сгенерил второй параллельный поток, а просто, во время выполнния этого потока получить доступ к контролам первого потока, то все работает отлично... А вот как сделать так, что бы передать контрол из одного потока в другой, не получаеться : (
--------------------
Трудно жить на свете негритенку Пете, Бьет его по роже пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже! |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
LectorSP, если контрол создан в одном из потоков, то он и принадлежит диспетчеру этого потока и никакому другому...
-------------------- СУВ, Partizan. |
|||
|
||||
LectorSP |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 13.4.2006 Где: г. Минск Репутация: 1 Всего: 2 |
Вот тут ответ на вопрос, как это нужно делать используя WPF - http://www.nbdtech.com/blog/archive/2007/0...ource-Code.aspx : )))
PS: Partizan, тебе огромное спасибо за то что потдержал меня в этом вопросе : ) --------------------
Трудно жить на свете негритенку Пете, Бьет его по роже пионер Сережа! Никакими расовыми этническими и религиозными предрассудками я не страдаю!Я за DOT.NET......................ну и за мир во всем мире тоже! |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | WPF и Silverlight | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |