Использование вспомогательной переменной не поможет. Тип Point
является типом значения.
Вам необходимо присвоить целое значение Point свойству Origin: -
Origin = new Point(10, Origin.Y);
Проблема в том, что при доступе к свойству Origin то, что возвращается get
, является копией структуры Point в автоматически созданном поле свойств Origin. Следовательно, ваша модификация поля X этой копии не повлияет на базовое поле. Компилятор обнаруживает это и выдает ошибку, поскольку эта операция совершенно бесполезна.
Даже если вы используете свою собственную переменную поддержки, ваш get
будет выглядеть так: -
get { return myOrigin; }
Вы бы все равно возвращали копию структуры Point и получили бы ту же ошибку.
Хмм ... прочитав ваш вопрос более внимательно, возможно, вы действительно хотите изменить вспомогательную переменную прямо из вашего класса: -
myOrigin.X = 10;
Да, это было бы то, что вам нужно.