WPF TextBox StringFormat не работает с PropertyChanged - PullRequest
0 голосов
/ 29 июня 2010

У меня проблема.Мне нужно иметь дважды отформатированные значения во всех текстовых полях.

Когда вы вводите что-то в это, после потери фокуса это будет отформатировано.

<TextBox Text="{Binding ABC, StringFormat='{}{0:N}'}"  />

Проблема возникает при добавлении этого UpdateSourceTrigger с измененным свойством.Тогда он никогда не будет отформатирован.

<TextBox Text="{Binding ABC, UpdateSourceTrigger=PropertyChanged, StringFormat='{}{0:N}'}"  />

Почему это так?Есть ли способ как это решить?(желательно в XAML)

1 Ответ

0 голосов
/ 29 июня 2010

Попробуйте это

<TextBox x:Name="test" Text="{Binding MyName, UpdateSourceTrigger=Explicit,StringFormat='{}{0:N}'}" TextChanged="test_TextChanged" Width="100" Height="30" />


 private void test_TextChanged(object sender, TextChangedEventArgs e)
    {
        BindingExpression exp = test.GetBindingExpression(TextBox.TextProperty);
        exp.UpdateSource(); 
    }
...