Ho un popup con un TextBox
che l'utente deve immettere un numero di ticket in, e quindi quando l'utente preme il tasto Invio, voglio che il numero del biglietto venga passato al ViewModel che recupererà il ticket.Come utilizzare EventTrigger e InvokeCommandAction al livello di programmazione?
Ecco il codice XAML per il TextBox
:
<TextBox x:Name="TicketNumber">
<i:Interaction.Triggers>
<i:EventTrigger EventName="KeyDown">
<i:InvokeCommandAction Command="{Binding OpenTicketCommand}"
CommandParameter="{Binding ElementName=TicketNumber,
Path=Text}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</TextBox>
I lavori di cui sopra in qualsiasi pressione di un tasto, ma io in realtà solo voglio che succeda quando si preme il tasto Invio. Come potrei fare per farlo?
EDIT: Io parto dal presupposto che avrebbe dovuto essere fatto a livello di codice (da qui il titolo), ma se non è troppo bene.
Un approccio alternativo sarebbe quello di utilizzare InputBindigs - combinazione di tasti per attivare il comando. –
@AdrianFaciu Grazie, se potessi fornire un semplice esempio sarebbe fantastico. Sono abbastanza nuovo per WPF e dovrò fare qualche ricerca per capire come funziona, quindi qualsiasi campione che puoi dare sarebbe molto apprezzato. –