NumericUpDown
Элемент управления NumericUpDown содержит одно численное зна- чение, которое можно увеличить или уменьшить, нажав кнопку ВВЕРХ или ВНИЗ элемента управления. Пользователь сам может ввести значе- ние, если только свойство ReadOnly имеет значение false.
Чтобы задать допустимый интервал значений элемента управления, присвойте значения свойствам Minimum и Maximum.
Задайте свойству Value начальное значение. В коде это свойство бу- дет возвращать вам выбранное значение.
Задайте свойству Increment - шаг изменения значения, когда пользо- ватель нажмет кнопку ВВЕРХ или кнопку ВНИЗ.
Чтобы значения отображались в шестнадцатеричном формате, при- свойте свойству Hexadecimal значение true.
Чтобы в десятичных числах отображался разделитель групп разря- дов, присвойте свойству ThousandsSeparator значение true.
Чтобы задать число десятичных разрядов, которые будут отображать- ся после разделителя целой и дробной частей, присвойте свойству DecimalPlaces значение, равное этому числу десятичных разрядов.
При вызове метода UpButton или DownButton, как в коде, так и вруч- ную, нажатием кнопки ВВЕРХ или кнопки ВНИЗ, новое значение прове- ряется, и элемент управления обновляется, принимая это значение в со- ответствующем формате. В частности, если свойство UserEdit имеет зна-
чение true, метод ParseEditText вызывается до проверки и обновления значения. После этого проверяется, находится ли значение в интервале значений свойств Minimum и Maximum, а затем вызывается метод UpdateEditText.
Пример
В приведенном ниже примере создается и инициализируется элемент управления NumericUpDown, задаются некоторые из его общих свойств, а также дается разрешение пользователям изменять некоторые из них во время выполнения. В коде предполагается, что в форме были размеще- ны три элемента управления CheckBox, а также были созданы обработ- чики для их событий Click. Свойства DecimalPlaces, ThousandsSeparator и Hexadecimal задаются по событию Click каждого флажка.
public void InstantiateMyNumericUpDown()
{
// Create and initialize a NumericUpDown control. numericUpDown1 = new NumericUpDown();
// Dock the control to the top of the form.
numericUpDown1.Dock = System.Windows.Forms.DockStyle.Top;
// Set the Minimum, Maximum, and initial Value. numericUpDown1.Value = 5;
numericUpDown1.Maximum = 2500;
numericUpDown1.Minimum = -100;
// Add the NumericUpDown to the Form. Controls.Add(numericUpDown1);
}
// Check box to toggle decimal places to be displayed. private void checkBox1_Click(Object sender, EventArgs e)
{
/* If DecimalPlaces is greater than 0, set them to 0 and round the current Value; otherwise, set DecimalPlaces to 2 and change the Increment to 0.25. */
if (numericUpDown1.DecimalPlaces > 0)
{
numericUpDown1.DecimalPlaces = 0;
numericUpDown1.Value = Decimal.Round(numericUpDown1.Value, 0);
}
else
{
numericUpDown1.DecimalPlaces = 2; numericUpDown1.Increment = 0.25M;
}
}
// Check box to toggle thousands separators to be displayed. private void checkBox2_Click(Object sender, EventArgs e)
{
/* If ThousandsSeparator is true, set it to false; otherwise, set it to true. */
if (numericUpDown1.ThousandsSeparator)
{
numericUpDown1.ThousandsSeparator = false;
}
else
{
numericUpDown1.ThousandsSeparator = true;
}
}
// Check box to toggle hexadecimal to be displayed.
private void checkBox3_Click(Object sender, EventArgs e)
{
/* If Hexadecimal is true, set it to false; otherwise, set it to true. */
if (numericUpDown1.Hexadecimal)
{
numericUpDown1.Hexadecimal = false;
}
else
{
numericUpDown1.Hexadecimal = true;
}
}
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.