我在.Net 4.5中编写WPF MVVM应用程序,需要以下问题的帮助: 我有数值为例如110000的文本框,并且当两个11都被删除UI自动填充框包含数字0.相反,我希望它保持0000. 图片来帮助说明问题。WPF UI自动填充文本框
编辑自定义文本框将其设为默认
static CustomTextBox()
{
var defaultMetadata = TextBox.TextProperty.GetMetadata(typeof(TextBox));
TextBox.TextProperty.OverrideMetadata(typeof(CustomTextBox), new FrameworkPropertyMetadata(
string.Empty, FrameworkPropertyMetadataOptions.Journal | FrameworkPropertyMetadataOptions.BindsTwoWayByDefault,
defaultMetadata.PropertyChangedCallback,
defaultMetadata.CoerceValueCallback,
true,
System.Windows.Data.UpdateSourceTrigger.PropertyChanged));
}
物业
public double RatedVoltage
{
get { return _RatedVoltage; }
set
{
SetProperty(ref _RatedVoltage, value);
if (OnRatedVoltageChanged != null)
OnRatedVoltageChanged();
}
}
的PropertyChanged
<src:CustomTextBox VerticalAlignment="Center"
Text="{Binding TrafoProperties.RatedVoltage,
Mode=TwoWay,
ValidatesOnNotifyDataErrors=True,
NotifyOnValidationError=True}"
代码
它将文本框绑定为double property,当它更改为0000时,它将自动将其更正为0.