Как реализовать командование в Silverlight - PullRequest
0 голосов
/ 20 августа 2010

Простой случай:

<usercontrol>
   <Views:UserListView x:Name="settingsTreeView"/>
   <Button DataContext="{Binding ElementName=settingsTreeView, Path=SelectedItem}"
           Command="{Binding CreateChildCommand}"/>
</usercontrol>

Задача состоит в том, чтобы привязать к кнопке DataContext, который реализует CreateChildCommand.DataContext - это выбранный элемент в виде дерева.Ничего не случилось.Я проверил свойства кнопки во время выполнения: свойства кнопки Command и DataContext имеют нулевое значение.

Вопросы:

  1. Допустимо ли изменение DataContext во время выполнения?
  2. Как передать выбранный элемент объекту Command?

По поводу командования в Silverlight вы можете обратиться к:

http://johnpapa.net/silverlight/5-simple-steps-to-commanding-in-silverlight/ http://community.infragistics.com/silverlight/media/p/125526.aspx

http://houseofbilz.com/archives/2009/05/22/adventures-in-mvvm-commands-in-silverlight/ http://www.silverlightshow.net/items/Silverlight-4-How-to-Command-Control.aspx

что-то идет не так

1 Ответ

2 голосов
/ 21 августа 2010

Первое, что нужно сделать, это проверить, не сбились ли ваши привязки.Вы должны увидеть какой-то вывод в журнале вывода, если это так.Допустимо изменять DataContext во время выполнения, и вы можете привязать выбранный элемент к свойству CommandParameter на кнопке, если хотите, чтобы он был передан команде.Дайте мне знать, если у вас есть ошибки в выходном журнале или нет.

...