Правила инкапсуляции С#
Маленький вопрос об общих правилах написания кода. Работаю я с шаблоном MVC в WinForms. В классе ViewDetailed:View в целях выполнения привязки у меня создана ссылка на класс FrmDetailed в виде поля. От этой проинициализированной ссылки вызываются элементы управления формы.
public ViewDetailed(Model model, Controller controller, FrmDetailed f):base(model, controller)
{
form = f;
}
form.txtboxCpu.DataBindings.Add(new Binding("Text", model.Cpu, "ActiveProcess"));
Элемент управления в этом случае представлен полем, созданным автоматически в частичном классе FrmDelailed.Designer. Для возможности вызова элемента управления в классе представления поначалу я создал свойство для чтения:
public TextBox TxtboxCpu
{
get { return txtboxCpu; }
}
Хотя проект компилировался и без этого. Может быть дело в том, что класс FrmDetailed частичный. Подскажите, пожалуйста, с точки зрения правильности кода следует обращаться к свойству или к полю элемента управления? Да и вообще, считывть/записывать данные из полей, имеющих свойства, напрямую или всё-таки работать со свойствами, если они есть?