私はTextBoxを持っています。セットと私は私のロジックに応じてテキストボックスの値を変更して取得します。しかし、UIは変更に関して更新されません。ここでwpf用にUIが正しく更新されないTextBox
<TextBox
Width="185"
Name="TextBoxNumber"
VerticalAlignment="Center"
HorizontalAlignment="Left"
BorderThickness="0"
Margin="5, 4, 0, 2"
Text="{Binding Path=OmukText, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
</TextBox>
セットであると
private string _omukText = string.Empty;
public string OmukText
{
get
{
return this._omukText;
}
set
{
if(value.Equals(" "))
{
_omukText = string.Empty;
}
if (value.Length > 4 && !value.Contains(" "))
{
this._omukText = value.Insert(4, " ");
}
else
{
this._omukText = value.Trim();
}
this.OnPropertyChanged("OmukText");
}
}
と仮定を取得し、利用者は、値が空の文字列として設定する必要があり、私のセッターによると、テキストボックスにスペースを入れます。しかし、現実には文字列はそのままの状態で残っています。プロパティはUIで変更されていません。リアルタイムでUIを変更するにはどうすればよいですか?私はこのようにするのではなく、他の選択肢を開いています。
FYI - 私はこれは実際には、.NET Frameworkの4.5で修正されたバグです.NET 4.0
こんにちは、あなたの入力値は?あなたがそれを与えたところで、私はUIまたはVMを意味し、あなたの期待される答えは何ですか? – Poovizhi
私は入力をテキストボックスに入力しています。セッターでは空文字列の_omukTextの値を持っていますが、テキストボックスにはまだtextBoxにスペースが表示されています。 – lukai
私は同じコードを使用していましたが、独自のOnPropertyChangedメソッドを使用しました。 – Poovizhi