Получить значение из элементов управления в другом потоке
Как я могу получить в приложении WPF значение из ползункового элемента управления в другом потоке?
Для установки значения я использую:
public static class ControlExtensions
{
public static void InvokeIfRequired(this Control control, Action action)
{
if (System.Threading.Thread.CurrentThread != control.Dispatcher.Thread)
control.Dispatcher.Invoke(action);
else
action();
}
public static void InvokeIfRequired<T>(this Control control, Action<T> action, T parameter)
{
if (System.Threading.Thread.CurrentThread != control.Dispatcher.Thread)
control.Dispatcher.Invoke(action, parameter);
else
action(parameter);
}
}
Вызов метода:
ControlExtensions.InvokeIfRequired(_mw, value => _mw.tb_w3.Text = value, godz_w3);
1 ответ
Решение
Используя это должно работать, вы просто извлекаете значение в переменную text
вместо того, чтобы назначить его Text
свойство того, что я предполагаю, является TextBox
string text;
_mw.InvokeIfRequired(value => text = _mw.Text);