Я считаю, что параметры команды WPF являются ограничением. Возможно, это признак того, что я использую их не по назначению, но я все еще пытаюсь это сделать, прежде чем я откажусь и сделаю другой подход.Команды и параметры WPF
Я собрал систему для executing commands asynchronously, но трудно использовать все, что требует ввода данных. Я знаю, что один общий шаблон с командами WPF должен пройти в this
. Но не будет работать вообще для асинхронных команд, потому что все свойства зависимостей тогда недоступны.
Я заканчиваю с кодом, как это:
<Button Command="{Binding ElementName=servicePage, Path=InstallServiceCommand}">
<Button.CommandParameter>
<MultiBinding Converter="{StaticResource InstallServiceParameterConverter}">
<MultiBinding.Bindings>
<Binding ElementName="servicePage" Path="IsInstalled"/>
<Binding ElementName="localURI" Path="Text"/>
<Binding ElementName="meshURI" Path="Text"/>
<Binding ElementName="registerWithMesh" Path="IsChecked"/>
</MultiBinding.Bindings>
</MultiBinding>
</Button.CommandParameter>
</Button>
, а также нужен класс InstallServiceParametersConverter (плюс InstallServiceParameters).
Кто-нибудь видит очевидный способ улучшить это?
Я не понимаю, почему это проблема. Я использовал WPF как это, потому что я помню, как его можно использовать. Это также означает, что вы можете повторно использовать конвертер с различными источниками для данных, когда захотите, и не привязаны к типу `this`. Можете ли вы объяснить, почему вы считаете, что это неправильно? – 2008-10-15 08:19:54