UpDownBase.ReadOnly Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia wartość wskazującą, czy tekst można zmienić tylko za pomocą przycisków w górę lub w dół.
public:
property bool ReadOnly { bool get(); void set(bool value); };
public bool ReadOnly { get; set; }
member this.ReadOnly : bool with get, set
Public Property ReadOnly As Boolean
Wartość właściwości
true
jeżeli tekst można zmienić za pomocą tylko przycisków w górę lub w dół; w przeciwnym razie , false
. Wartość domyślna to false
.
Przykłady
W poniższym przykładzie kodu użyto klasy NumericUpDown pochodnej i ustawiono niektóre jej właściwości pochodzące z klasy UpDownBase. Ten kod wymaga posiadania kontrolki NumericUpDown , dwóch ComboBox kontrolek i trzech CheckBox kontrolek utworzonych w formularzu. Etykietuj kontrolki ComboBox BorderStyle i TextAlign. Etykietuj kontrolki CheckBox InterceptArrowKeys, ReadOnlyi UpDownAlign. Kod umożliwia zmianę wartości właściwości w czasie wykonywania i sprawdzenie, jak każdy wpływa na wygląd i zachowanie pola pokrętła. Dodaj następujące elementy do pola kombi z etykietą BorderStyle: None
, Fixed3D
i FixedSingle
. Dodaj następujące elementy do pola kombi z etykietą TextAlign: Left
, Right
i Center
.
void comboBox1_SelectedIndexChanged( Object^ sender, EventArgs^ e )
{
// Set the BorderStyle property.
if ( !String::Compare( comboBox1->Text, "Fixed3D" ) )
{
numericUpDown1->BorderStyle = System::Windows::Forms::BorderStyle::Fixed3D;
}
else
if ( !String::Compare( comboBox1->Text, "None" ) )
{
numericUpDown1->BorderStyle = System::Windows::Forms::BorderStyle::None;
}
else
if ( !String::Compare( comboBox1->Text, "FixedSingle" ) )
{
numericUpDown1->BorderStyle = System::Windows::Forms::BorderStyle::FixedSingle;
}
}
void comboBox2_SelectedIndexChanged( Object^ sender, EventArgs^ e )
{
// Set the TextAlign property.
if ( !String::Compare( comboBox2->Text, "Right" ) )
{
numericUpDown1->TextAlign = HorizontalAlignment::Right;
}
else
if ( !String::Compare( comboBox1->Text, "Left" ) )
{
numericUpDown1->TextAlign = HorizontalAlignment::Left;
}
else
if ( !String::Compare( comboBox1->Text, "Center" ) )
{
numericUpDown1->TextAlign = HorizontalAlignment::Center;
}
}
void checkBox1_Click( Object^ sender, EventArgs^ e )
{
// Evaluate and toggle the ReadOnly property.
if ( numericUpDown1->ReadOnly )
{
numericUpDown1->ReadOnly = false;
}
else
{
numericUpDown1->ReadOnly = true;
}
}
void checkBox2_Click( Object^ sender, EventArgs^ e )
{
// Evaluate and toggle the InterceptArrowKeys property.
if ( numericUpDown1->InterceptArrowKeys )
{
numericUpDown1->InterceptArrowKeys = false;
}
else
{
numericUpDown1->InterceptArrowKeys = true;
}
}
void checkBox3_Click( Object^ sender, EventArgs^ e )
{
// Evaluate and toggle the UpDownAlign property.
if ( numericUpDown1->UpDownAlign == LeftRightAlignment::Left )
{
numericUpDown1->UpDownAlign = LeftRightAlignment::Right;
}
else
{
numericUpDown1->UpDownAlign = LeftRightAlignment::Left;
}
}
private void comboBox1_SelectedIndexChanged(Object sender,
EventArgs e)
{
// Set the BorderStyle property.
switch(comboBox1.Text)
{
case "Fixed3D":
numericUpDown1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
break;
case "None":
numericUpDown1.BorderStyle = System.Windows.Forms.BorderStyle.None;
break;
case "FixedSingle":
numericUpDown1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
break;
}
}
private void comboBox2_SelectedIndexChanged(Object sender,
EventArgs e)
{
// Set the TextAlign property.
switch (comboBox2.Text)
{
case "Right":
numericUpDown1.TextAlign = HorizontalAlignment.Right;
break;
case "Left":
numericUpDown1.TextAlign = HorizontalAlignment.Left;
break;
case "Center":
numericUpDown1.TextAlign = HorizontalAlignment.Center;
break;
}
}
private void checkBox1_Click(Object sender,
EventArgs e)
{
// Evaluate and toggle the ReadOnly property.
if (numericUpDown1.ReadOnly)
{
numericUpDown1.ReadOnly = false;
}
else
{
numericUpDown1.ReadOnly = true;
}
}
private void checkBox2_Click(Object sender,
EventArgs e)
{
// Evaluate and toggle the InterceptArrowKeys property.
if (numericUpDown1.InterceptArrowKeys)
{
numericUpDown1.InterceptArrowKeys = false;
}
else
{
numericUpDown1.InterceptArrowKeys = true;
}
}
private void checkBox3_Click(Object sender,
EventArgs e)
{
// Evaluate and toggle the UpDownAlign property.
if (numericUpDown1.UpDownAlign == LeftRightAlignment.Left)
{
numericUpDown1.UpDownAlign = LeftRightAlignment.Right;
}
else
{
numericUpDown1.UpDownAlign = LeftRightAlignment.Left;
}
}
Private Sub comboBox1_SelectedIndexChanged(sender As Object, e As EventArgs)
' Set the BorderStyle property.
Select Case comboBox1.Text
Case "Fixed3D"
numericUpDown1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D
Case "None"
numericUpDown1.BorderStyle = System.Windows.Forms.BorderStyle.None
Case "FixedSingle"
numericUpDown1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
End Select
End Sub
Private Sub comboBox2_SelectedIndexChanged(sender As Object, e As EventArgs)
' Set the TextAlign property.
Select Case comboBox2.Text
Case "Right"
numericUpDown1.TextAlign = HorizontalAlignment.Right
Case "Left"
numericUpDown1.TextAlign = HorizontalAlignment.Left
Case "Center"
numericUpDown1.TextAlign = HorizontalAlignment.Center
End Select
End Sub
Private Sub checkBox1_Click(sender As Object, e As EventArgs)
' Evaluate and toggle the ReadOnly property.
If numericUpDown1.ReadOnly Then
numericUpDown1.ReadOnly = False
Else
numericUpDown1.ReadOnly = True
End If
End Sub
Private Sub checkBox2_Click(sender As Object, e As EventArgs)
' Evaluate and toggle the InterceptArrowKeys property.
If numericUpDown1.InterceptArrowKeys Then
numericUpDown1.InterceptArrowKeys = False
Else
numericUpDown1.InterceptArrowKeys = True
End If
End Sub
Private Sub checkBox3_Click(sender As Object, e As EventArgs)
' Evaluate and toggle the UpDownAlign property.
If numericUpDown1.UpDownAlign = LeftRightAlignment.Left Then
numericUpDown1.UpDownAlign = LeftRightAlignment.Right
Else
numericUpDown1.UpDownAlign = LeftRightAlignment.Left
End If
End Sub
Uwagi
Ustawiając ReadOnly właściwość na true
, należy wyeliminować konieczność weryfikacji Text właściwości. Użytkownik będzie ograniczony do używania przycisków w górę i w dół, aby zmienić Text wartości. Umożliwi to wybranie tylko wybranych wartości.
Uwaga
W klasie DomainUpDownpochodnej opisane zachowanie jest nieco inne. Po ReadOnly ustawieniu true
wartości na i naciśnięciu klawisza kontrolka wybiera pierwszy element w kolekcji, w którym pierwszy znak jest zgodny z naciśniętym klawiszem.