Я использую Mvvm / Prism для разработки интерфейса, я создал пользовательский элемент управления с кодом, который имеет текстовое поле label (ничего mvvm)
весь проект находится на шаблоне mvvm, и у меня есть страница Home, содержащая 3 пользовательских элемента управления.
В моем userControl я связываю содержимое метки со свойством (строка) PROP1, текстовое поле (строка) PROP2 со свойством (код позади), а в моем HOME я просто привязываю эти свойства к свойствам в моем HomeViewModel
<local:userControl PROP1="{Binding Text}" PROP2="{Binding Name}" />
Теперь я хочу привязать данные к нажатию кнопки тем же способом, что и хочу на моей странице userControl:
<Button Content="Button" Command="{Binding Klick}"/>
Но я не знаю, как сохранить его в свойстве, чтобы я мог использовать его позже
Вот как я хочу, чтобы финальный Дом был похож на
<local:userControl Klick="{Binding Commandp}" PROP1="{Binding Textp}" PROP2="{Binding Namep}" />
и HomeViewModel
class HomeViewModel : BindableBase
{
public ICommand Commandp{ get; private set; }
private readonly IRegionManager _regionManager;
public HomeViewModel (IRegionManager regionManager)
{
Commandp= new DelegateCommand(() => NavigateTo("Docs"));
}
private void NavigateTo(string url)
{
_regionManager.RequestNavigate(Regions.Contentregoin, url);
}
}
PS: я использую ViewModelLocator.AutoWireViewModel