Невозможно передать аргументы в dispatcher.invoke - PullRequest
0 голосов
/ 16 марта 2012

Мне нужно будет преобразовать следующий код VB код в WPF C # :

// VB
Me.Invoke(New FooDelegate(AddressOf Foo), New Object() {cmd})

Где Foo - это просто метод, принимающий строковый аргументcmd.

Я попробовал все следующее в WPF C #, но все выдало мне исключение:

//C#
dispatcher.Invoke(new FooDelegate(Foo()), cmd);
dispatcher.Invoke(new FooDelegate(Foo(cmd)), cmd); 
dispatcher.Invoke(new FooDelegate(Foo()), new object() {cmd});

Что такое правильное форматирование?

1 Ответ

4 голосов
/ 16 марта 2012

Вы вызываете функцию с () вместо получения ее адреса.Если ProcessCommandCT не возвращает функцию, она должна выглядеть примерно так:

dispatcher.Invoke(new ProcessCommandDelegate(ProcessCommandCT), cmd); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...