Я не уверен, чего вы пытаетесь достичь, но если у вас есть несколько пользовательских контролей, вы хотите, чтобы они общались друг с другом и обменивались данными или вызывали какие-то события.Хороший и чистый способ сделать это без повышения согласованности между элементами управления - это использовать систему обмена сообщениями для публикации и регистрации сообщений.Это позволит вам запускать события и передавать данные между различными элементами управления.Есть несколько структур, которые поддерживают это.
Вы можете заглянуть в Prism EventAggregator.Библиотеку Prism можно загрузить с веб-сайта Microsoft.
Другая структура - http://galasoft.ch/mvvm/. Посмотрите на класс Messenger.
Если вы хотите изменить DataContext другого объекта, самый простой способ - привязать текстовый объектный текст к свойству в вашем ModelView.В противном случае вы можете просто установить атрибут x: Name для объекта в XAML и сослаться на него в дополнительном коде, чтобы изменить текст данных во время вызова события на что-то другое.Это предполагается, если вы находитесь в одной и той же области имен / классе.
*. XAML
<ComboBox x:Name="ComboBox1">
<ComboBoxItem Content="Blah"/>
</ComboBox>
*. XAML.cs
public void SomeEventInvoked(object sender, EventArgs e)
{
ComboBox1.DataContext = someObject;
}