У меня есть созданный UserControl. Несколько его экземпляров я добавляю на MainWindow. Передо мной стоит задача: все экземпляры этого UserControl уведомить об изменении свойства в одном из этих UserControl'ов.
Если быть точнее, то на UserControl есть TextBlock, при нажатии на него, Foregraund становится белым, а все остальные TextBlock'и на всех остальных UserControl'ах должны стать серыми.
Не знаю как реализовать. Буду благодарен любой помощи.
P.S.
private SolidColorBrush selectedColor = new SolidColorBrush(Colors.White);
private SolidColorBrush notSelectedColor = new SolidColorBrush(Color.FromArgb(255,144, 161, 169));
private bool _isSelected;
public bool IsSelected
{
get { return _isSelected; }
set
{
_isSelected = value;
if(IsSelected)
//Уведомить
txb.Foreground = IsSelected ? selectedColor : notSelectedColor;
OnPropertyChanged("IsSelected");
}
}
private string _text;
public string Text
{
get { return _text; }
set
{
_text = value;
OnPropertyChanged("Text");
}
}
public SettingsTreeViewTitle()
{
InitializeComponent();
DataContext = this;
}
public event PropertyChangedEventHandler PropertyChanged;
[NotifyPropertyChangedInvocator]
protected virtual void OnPropertyChanged(string propertyName)
{
var handler = PropertyChanged;
if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName));
}
private void SettingsTreeViewTitle_OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
IsSelected = true;
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Как реализовать многопоточность в WPF? Нужно сделать программу, которая при поступлении данных на COM порт меняет видео в программе на другое,...
Развернул свой Nuget Server на удаленном хостеТакже собрал два NuGet пакета и добавил их напрямую в репозиторий сервера, и выкладываю сервак вместе...