Fundição no MVVM Light CommandParameterValue
-
23-09-2019 - |
Pergunta
Aqui está o meu problema, quero passar pelo número inteiro 1 quando esta tela é pressionada. Toda vez que clico na tela, tenho uma exceção não atendida do tipo 'System.invalidCastException', ocorreu em galasoft.mvvmlight.dll. Agora eu poderia facilitar minha vida e apenas fazer o RelrayCommand para aceitar uma string em vez de int, mas por uma questão de aprender. Como eu iria fazer dessa maneira,
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseLeftButtonDown">
<cmd:EventToCommand Command="{Binding ButtonPress}"
CommandParameterValue="1"
</i:EventTrigger>
</i:Interaction.Triggers>
Solução
É o seu problema relacionado a este tópico ignore o tipo de conteúdo na pesquisa ?
ou isso pode ajudá-lo - especificar ISDocument: 1 http://www.dotnetmafia.com/blogs/dotnettipofdayi/Archive/2009/08/26/Excluver-folders-from-search-results.aspx
Outras dicas
Você pode passar os tipos de dados além da string para o comando usando a seguinte sintaxe:
<i:EventTrigger EventName="MouseLeftButtonDown">
<cmd:EventToCommand Command="{Binding ButtonPress}">
<cmd:EventToCommand.CommandParameterValue>
<s:Int32>1</s:Int32>
</cmd:EventToCommand.CommandParameterValue>
</cmd:EventToCommand>
</i:EventTrigger>
Adicione a declaração de namespace fluente para S:
xmlns:s="clr-namespace:System;assembly=mscorlib"