Я только начал заниматься C# и WPF.C# и WPF: элементы управления недоступны из другого класса
Предположим, что я хочу создать черную сетку и что я хочу случайным образом перемещаться по красной площади в указанной сетке.
В настоящее время я могу в принципе делать все, что я хочу до тех пор, пока я все в «MainWindow.xaml.cs» ...
Теперь моя проблема заключается в том, что если я создаю новый класс (например, «MakeStuffHappen .cs "), и из него я пытаюсь получить доступ к Grid (именуемому« MyGrid »), который будет создан экземпляром MainWindow, intellisense не« видит »его. Я попытался создать геттер, который возвращает «MyGrid», но затем компилятор говорит, что «для ссылки на объект не требуется статическое поле, метод или свойство» ProjectName.MainWindow.getGrid(). Очевидно, что я не могу определить MainWindow как статический класс ...
Любые советы о том, как решить эту проблему?
Спасибо!
PS поскольку я не являюсь, очевидно, не программист, я не всегда осведомлены о технических терминов, используемых при поиск информации ... поэтому я заранее извиняюсь, если этот вопрос уже задан.
P.P.S. Я видел это: Access MainWIndow Control from a class in a separate file, но это не помогает.
С таким уровнем знаний, я думаю, вам лучше читать C# t прежде чем перейти к фактическому кодированию. – Gebb
Вы можете сделать статический экземпляр вашего элемента управления в MainWindow.cs и называть его как MainWindow.yourControl – Sybren
@Sybren Почему вы * когда-либо * статичным членом класса UI? Почему бы просто не передать экземпляр при его создании, а затем вызвать общедоступный метод? – BradleyDotNET