Область видимости объекта - C#
Формулировка задачи:
Собственно вопрос в следующем: как сделать объект dom созданный одним методом доступным в другом для обработки.
public class Building { private int area; private int floors; public Building(int x, int y) { area = x; floors = y; } public void AddFloor(Building obj) { obj.floors = obj.floors + 1; } public void DestroyFloor(Building obj) { if (obj.floors != 0) { obj.floors = obj.floors - 1; } } public void DisplayResult(Building obj, TextBox box) { box.Text = "Площадь объекта: " + obj.area + " || Колличество этажей: " + obj.floors; } } public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void result_text_TextChanged(object sender, TextChangedEventArgs e) { } private void Button_Click_1(object sender, RoutedEventArgs e) { Building dom = new Building(Convert.ToInt32(area_text.Text), Convert.ToInt32(floors_text.Text)); dom.DisplayResult(dom, result_text); } private void Button_Click_2(object sender, RoutedEventArgs e) { dom.AddFloor(dom); // ОШИБКА < --- Имя dom отсутствует в текущем контексте } }
Решение задачи: «Область видимости объекта»
textual
Листинг программы
public partial class MainWindow : Window { Building dom {get;set;} public MainWindow() { InitializeComponent(); } private void result_text_TextChanged(object sender, TextChangedEventArgs e) { } private void Button_Click_1(object sender, RoutedEventArgs e) { dom = new Building(Convert.ToInt32(area_text.Text), Convert.ToInt32(floors_text.Text)); dom.DisplayResult(dom, result_text); } private void Button_Click_2(object sender, RoutedEventArgs e) { dom.AddFloor(dom); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д