Вот простая реализация этого
public class ARAControl
{
public ARAPadding Padding { get; set; }
}
public struct ARAPadding
{
public int All { get; set; }
}
И если вы используете это, вы, вероятно, получите эту ошибку
ARAControl control = new ARAControl();
control.Padding.All = 10;
Это происходит потому, что структура является типом значения. Устанавливая это свойство, вы сначала вызываете метод Get. Свойство Get вернет копию Padding, поэтому это тип значения, а C # обнаружит ошибку и предотвратит компиляцию