У меня есть пользовательский элемент управления с некоторыми общедоступными свойствами.Определенным свойством является целое число, но оно должно принимать только положительные значения, которые меньше максимального значения const
.В настоящее время я делаю следующее:
private int markerwidth = 2;
[DefaultValue(2), Category("Appearance"), Description("Size of position marker")]
public int MarkerWidth
{
get
{
return this.markerwidth;
}
set
{
if (value > 0 && value <= MAXMARKERWIDTH)
{
this.markerwidth = value;
}
}
}
Это делает работу, но молча терпит неудачу.Я думаю, я мог бы добавить логику, чтобы использовать 0 для отрицательных значений и максимальное значение для тех, которые превышают его, но это все еще не идеально.
В отличие от этого, свойство TabValue (унаследованное от UserControl
) жалуетсяесли я попытаюсь установить отрицательное значение во время разработки (и предположительно во время выполнения).
Если это достигнуто с нормальным исключением?Или есть лучший способ?Атрибут может быть?