Сложные типы недвижимости
У меня есть класс с именем TerminalConnectionParameters, который содержит несколько различных типизированных полей, таких как имя хоста, IP-адрес, имя пользователя, пароль и т. д.
Я хочу использовать этот тип класса как свойство фиктивного класса, например :
public class Dummy { private TerminalConnectionParameters _parameters; public TerminalConnectionParameters Parameters { get { // do some fancy calculation here return _parameters; } set { _parameters = value; // do some fancy calculation here } } }
Это гарантирует, что я могу получить или установить весь класс параметров фиктивного объекта.
Пока все хорошо, но что, если я хочу использовать это свойство как :
objectDummy.Parameters.Hostname= "dummyRouter";
Конечно, этот оператор присваивания не будет устанавливать значение внутреннего поля _parameters dummyObject. Но что тогда ? И каков правильный способ реализации такого писателя свойств без необходимости создавать средство доступа к свойствам каждого поля TerminalConnectionParameters уникально ?
Я знаю о тривиальном способе, как показано ниже, но нет ли лучшего решения ?
TerminalConnectionParameters temp = objectDummy.Parameters; temp.HostName = "dummyRouter"; objectDummy.Parameters = temp;
И причина этого вопроса заключается в том, что я хочу использовать PropertyGrid для работы с внутренним объектом _parameters формы.
Что я уже пробовал:
Как описано в приведенном выше примере.