2010-07-26 5 views
0

У меня есть приложение WPF VB.net, которое создает список из привязки данных. Для каждой строки в databind он генерирует текстовый блок, который отображает информацию из разных полей в привязке данных. Он также генерирует кнопку, которую я хотел бы запустить подпрограмму при нажатии.Передача параметров подпрограмме с помощью кнопки WPF

Когда я нажимаю кнопку, я хочу, чтобы она могла получить информацию из базы данных в столбце, на который нажата кнопка, и передать его подпрограмме, чтобы код мог использовать эту информацию.

Любые идеи?

ответ

1

Это звучит как работа для Routed Command. Передайте свой объект данных в качестве параметра команды и настройте привязку команды для обработки при вызове команды. Таким образом, в шаблоне данных, вы бы что-то вроде:

<Button Command="YourCommandHere" CommandParameter={TemplateBinding SomeProperty}" /> 

Затем в обработчике команды (созданной через CommandBinding) вы будете иметь параметр команды, переданный вам в свойстве параметра из ExecutedRoutedEventArgs. Прочитайте статью, с которой я связан.

+0

У вас есть пример кода с помощью CommandParameter с помощью кнопки управления. В настоящее время я могу настроить новый RoutedCommand с помощью кнопки, но я не могу восстановить параметр в коде. – Ian

+0

Спасибо за комплект, я отменил пример из MSDN после прочтения вашего ответа и смог его реализовать в своем приложении. – Ian

Смежные вопросы