Есть ли способ установить свойства экземпляров структуры с помощью отражения?

Я пытаюсь написать код, который устанавливает свойство в структуре (важно, чтобы это было свойство структуры), и это не удается:

System.Drawing.Rectangle rectangle = new System.Drawing.Rectangle();
PropertyInfo propertyInfo = typeof(System.Drawing.Rectangle).GetProperty("Height");
propertyInfo.SetValue(rectangle, 5, null);

Значение высоты (как сообщает отладчик) никогда не получает установлено любое значение - остается значение по умолчанию 0.

Я много размышлял о классах раньше, и это сработало нормально. Кроме того, я знаю, что при работе со структурами вам нужно использовать FieldInfo.SetValueDirect при установке поля, но я не знаю эквивалента для PropertyInfo.

48
задан Victor Chelaru 8 June 2011 в 14:35
поделиться