В MainWindow у меня есть экземпляр лица с именем jack, и, вызывая метод IncreaseElevation, я увеличиваю высоту Jacks.
В NewWindow у меня есть экземпляр лица с именем jill, и путем вызоваМетод IncreaseElevation Я могу увеличивать высоту Джилса.
Из NewWindow, как вызвать jack? IncreaseElevation, чтобы значение Mainsindow увеличивалось в MainWindow
Я уверен, что упускаю что-то очевидное.
public class Person: INotifyPropertyChanged
{
private int _elevation;
public string Name { get; set; }
public int Elevation
{
get { return _elevation; }
set
{
_elevation = value;
OnPropertyChanged("Elevation");
}
}
public void IncreaseElevation()
{
Elevation++;
}
public event PropertyChangedEventHandler PropertyChanged;
private void OnPropertyChanged(string property)
{
if (PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs(property));
}
}
MainWindow
public partial class MainWindow: Window
{
Person jack = new Person() { Name = "Jack", Elevation = 0 };
public MainWindow()
{
InitializeComponent();
this.DataContext = jack;
}
private void OpenNewWindow_Click(object sender, RoutedEventArgs e)
{
NewWindow newWindow = new NewWindow();
newWindow.Show();
}
private void IncreaseJacksElevation_Click(object sender, RoutedEventArgs e)
{
jack.IncreaseElevation();
}
}
NewWindow
public partial class NewWindow: Window
{
Person jill = new Person { Name ="Jill", Elevation = 0 };
public NewWindow()
{
InitializeComponent();
this.DataContext = jill;
}
private void IncreaseJillsElevation_Click(object sender, RoutedEventArgs e)
{
jill.IncreaseElevation();
}
private void IncreaseJacksElevation_Click(object sender, RoutedEventArgs e)
{
}
}
}