Итак, я искал и не могу точно узнать, как это сделать. Я создаю пользовательский элемент управления с помощью MVVM и хотел бы запустить команду в событии «Loaded». Я понимаю, что для этого требуется немного кода, но я не могу понять, что нужно. Команда расположена в ViewModel, которая задана как datacontext представления, но я не уверен точно, как ее маршрутизировать, поэтому я могу назвать ее из кода, стоящего за загруженным событием. В основном то, что я хочу что-то вроде этого ...Вызов команды из кода
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
//Call command from viewmodel
}
Глядя вокруг, я не могу найти синтаксис для этого никуда. Нужно ли мне сначала привязать команду в xaml, чтобы иметь возможность ссылаться на нее? Я замечаю вариант команды привязок внутри пользовательского элемента управления не позволит вам связать команды, как вы можете в чем-то вроде кнопки ...
<UserControl.CommandBindings>
<CommandBinding Command="{Binding MyCommand}" /> <!-- Throws compile error -->
</UserControl.CommandBindings>
я уверен, что есть простой способ сделать это, но я могу» т для жизни меня понять это.
Да, это именно то, что мне нужно, я знал, что есть простой способ. Благодаря! –
@KDiTraglia: Добро пожаловать, рад, что это помогло. –
Вы должны проверить, имеет ли viewModel значение null, прежде чем пытаться получить доступ к MyCommand. Я знаю, что мое решение не так, но ваш - это принятый ответ, поэтому он, вероятно, должен быть там. – Alain