Я разрабатываю новый настраиваемый элемент управления в VisualStudio и задаюсь вопросом, можете ли вы ограничить выбор свойств во время разработки.Предоставление свойств пользовательского контроля
Для иллюстрации проблемы существует два свойства, которые полагаются друг на друга - ориентация и текстовое поле. Сам элемент управления является прямоугольным, а ориентация может быть как вертикальной, так и горизонтальной. Я хочу ограничить свойство textside, так что, если ориентация вертикальная, текстовое поле может быть только левым или правым, а если ориентация горизонтальная, то текст может быть только сверху или снизу.
Понятно, что вы можете сделать это во время выполнения в рамках метода свойств объекта, проверив другие свойства, но то, что я хотел бы сделать это в окне свойств, как время разработки, поэтому нет возможности кого-то выбрать неправильную комбинацию свойств, а затем при запуске проекта отображается ничего или неправильная информация.
В настоящее время у меня есть это:
public enum VerticalTextSide { Left, Right }
public enum HorizontalTextSide { Top, Bottom }
public enum TextSide { }
public enum Orientation { Vertical, Horizontal }
private VerticalTextSide vts;
private HorizontalTextSide hts;
private TextSide db;
private Orientation or;
public TextSide textSide
{
get
{
if (or == Orientation.Vertical)
{
[need help!!]
}
else
{
[need help!!]
}
}
set
{
[need help!!]
}
}
public Orientation orientation
{
get
{
return or;
}
set
{
or = value;
}
}
Где мне нужна помощь, чтобы вернуться и установить значения перечислений в зависимости от ориентации выбранной. Может, есть другой способ, может быть?
Надеюсь, это выполнимо?
Благодаря