Я создал пользовательский элемент управления Silverlight.Разметка выглядит следующим образом:
<StackPanel Grid.Row="4" Grid.Column="0" Orientation="Horizontal" Width="Auto" Margin="5">
<Button Content="OK" Margin="0,0,5,5" MinWidth="50" Command="{Binding OKCommand}" />
</StackPanel>
Код ниже объявляет свойство зависимости 'OKCommand' как:
public ICommand OKCommand
{
get
{
return (ICommand)GetValue(OKCommandProperty);
}
set
{
SetValue(OKCommandProperty, value);
}
}
public static readonly DependencyProperty OKCommandProperty
= DependencyProperty.Register("OKCommand", typeof(ICommand), typeof(TestUserControl), new PropertyMetadata(null, OKCommandProperty_PropertyChangedCallback));
private static void OKCommandProperty_PropertyChangedCallback(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
}
Теперь я хочу использовать пользовательский элемент управления на другой странице, где находится представление& ViewModel определяет команду, к которой я хочу привязать OKCommand.Разметка XAML такова:
<local:TestControl OKCommand="{Binding Path=TestControlOk}"/>
Однако, когда я нажимаю кнопку, она ничего не выполняет.Любые подсказки относительно того, что я делаю здесь неправильно.