У меня есть текстовое поле и кнопка в пользовательском контроле, и она открывает окно при нажатии кнопки, чтобы выбрать что-то и вставить в текстовое поле:
как это:
string myProperty;
public string MyProperty
{
get
{
return myProperty;
}
set
{
myProperty= value;
RaisePropertyChanged("MyProperty");
}
}
public ICommand buttonClickCommand
{
get { return new RelayCommand(ShowItemView); }
}
void ShowItemView()
{
var ItemViewModel = new ItemViewModel();
var ItemView = new ItemView();
ItemView .DataContext = ItemViewModel ;
ItemView .ShowDialog();
if (ItemViewModel .SelectedItem != null)
myProperty= ItemViewModel .SelectedItem.Name;
}
и теперь я хочу создать два экземпляра usercontrol в окне и привязать их текстовое поле к двум свойствам viewmodel окна, поэтому я создаю для этого свойство зависимости следующим образом:
public static readonly DependencyProperty OperandTextValueProperty = DependencyProperty.Register("OperandTextValue",
typeof(string),
typeof(DefaultSpecItemControl),
new FrameworkPropertyMetadata()
{
PropertyChangedCallback = OnOperandTextValue,
BindsTwoWayByDefault = true
});
public string OperandTextValue
{
get
{
return (string)GetValue(OperandTextValueProperty);
}
set
{
SetValue(OperandTextValueProperty, value);
}
}
и связать его со свойствами в viewmodel окна, но я не знаю, как я могу связать его с viemodel usercontrol, в этом случае, чтобы связать его с MyProperty в viewmodel элемента управления.So
1: Есть ли способ привязать свойство зависимости пользовательского элемента управления к его собственной модели представления?
2: Я на правильном пути?
заранее спасибо.