Così ho cercato in giro e non riesco a scoprire esattamente come fare questo. Sto creando un controllo utente usando MVVM e vorrei eseguire un comando sull'evento 'Loaded'. Mi rendo conto che questo richiede un po 'di codice, ma non riesco a capire cosa è necessario. Il comando si trova nel ViewModel, che è impostato come il datacontext della vista, ma non so esattamente come instradarlo, così posso chiamarlo dal codice retrostante dell'evento caricato. Fondamentalmente quello che voglio è qualcosa di simile ...Comando di chiamata dal codice dietro
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
//Call command from viewmodel
}
Guardandosi intorno non riesco a trovare la sintassi per questo ovunque. Devo prima legare il comando in xaml per poterlo fare riferimento? Ho notato l'opzione binding comando all'interno di un controllo utente non vi permetterà di associare i comandi che puoi entro qualcosa di simile a un pulsante ...
<UserControl.CommandBindings>
<CommandBinding Command="{Binding MyCommand}" /> <!-- Throws compile error -->
</UserControl.CommandBindings>
Sono sicuro che c'è un modo semplice per fare questo, ma posso' t per la vita di me capirlo.
Sì, è esattamente quello di cui avevo bisogno, sapevo che c'era un modo semplice. Grazie! –
@KDiTraglia: Prego, lieto che abbia aiutato. –
Dovresti controllare se viewModel è nullo prima di provare ad accedere a MyCommand. So che la mia soluzione no, ma la tua è la risposta accettata, quindi dovrebbe probabilmente essere lì dentro. – Alain