テキストボックス、ボタン、ラベル、トグルボタンがあるWPFアプリに取り組んでいます。私のアプリケーションでは、次の 2 つの操作を実行する必要があります。
テキストボックスの入力を 0.0 から 5.0 の間のみに設定します。したがって、5.0 を超える値を書き込む場合は、5 に制限する必要があります。同様に、0.0 未満の値を書き込む場合は制限し、0.0 のみを表示する必要があります。
私のラベルは、値が 3.4 V の場合、ボルトを連結する必要があるため、コンテンツを「値」VIe として表示する必要があります。
Xaml は次のとおりです。
<TextBox Grid.Column="1" Text="{Binding VoltageText}" Name="VoltageBox" />
<Label Grid.Column="2" Content="{Binding CurrentText}" Name="CurrentLabel" />
モデル クラス:
string voltageText = string.Empty;
public string VoltageText
{
get
{
return voltageText;
}
set
{
voltageText = value;
OnPropertyChanged("VoltageText");
}
}
最初のポイントで述べたように、このテキストボックスには入力制限が必要です:) 0-9 と . テキストボックス内:
// present in xaml.cs
private void VoltageBox_TextChanged(object sender, TextChangedEventArgs e)
{
string txt = VoltageBox.Text;
if (txt != "")
{
VoltageBox.Text = Regex.Replace(VoltageBox.Text, "[^0-9] [^.]", "");
if (txt != VoltageBox.Text)
{
VoltageBox.Select(VoltageBox.Text.Length, 0);
}
}
}
string currentText = "0 V";
public string CurrentText
{
get
{
return currentText;
}
set
{
currentText = value;
OnPropertyChanged("CurrentText");
}
}
起動時に気付くことができCurrenttext = 0 V
、これらのステートメントを実行することで、の値を変更したいCurrentText
:
double tempval = 120.0;
string CurrentVal = Convert.ToString(tempval / 10);
CurrentText = CurrentVal; // here V as volts must be concatenated and value must be 12.0 V