Изменение свойства объекта формы из отдельного класса - PullRequest
0 голосов
/ 08 января 2012

Я очень новичок в использовании C #. Если вы когда-нибудь слышали о Karol, программе-роботе, написанной на Java, то это то, что я собираюсь построить.

Но я спотыкаюсь почти на первом препятствии, я хочу создать класс для Кароля (это просто картинка), который может перемещаться по экрану блоками по 32x32 квадрата.

Проблема в том, что когда вы создаете класс, вы не можете получить доступ к свойствам объектов формы, потому что они являются отдельными вещами.

Я бы хотел иметь возможность манипулировать объектами форм из моего класса, но без необходимости каждый раз передавать объект через метод.

Любая помощь очень ценится.

Ответы [ 2 ]

1 голос
/ 08 января 2012

Не нужно передавать ссылку на Form каждый раз.Должно быть достаточно, чтобы сделать что-то вроде этого:

`public class Karol 

  {

private Form _form=null;

public Karol(Form frm) {

      _form = frm;
}

// after use _form inside the functions and     properties of the class, where needed

 }`

edit

, чтобы получить доступ к управляющим данным внутри Form, который он должен представлять или контролировать сам, как

public Label MyFormLabel {....}

Или предоставить функции / свойства, которые устанавливают или получают данные из элемента управления.

public string MyFormLabelText { get{ return label.Text;} set{label.Text = value;}}

1 голос
/ 08 января 2012

Если это только один объект формы, которым манипулирует «Karol», вы должны быть в состоянии передать его конструктору и сохранить для использования в последующих вызовах членов. Таким образом, вы передаете его только один раз во время строительства.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...