这是我的文本框:
<TextBox TextAlignment="Right" Text="{Binding PriorityScore, StringFormat=N2}"
Name="PriorityScoreBox" TextChanged="PriorityScoreBox_TextChanged" />
当我点击“保存”按钮时,一切正常。
当我按下Control-S时,它不会保存文本框中的待处理更改。这是通过页面级按键处理程序完成的。
我无法使用UpdateSourceTrigger=PropertyChanged
,因为它会干扰字符串格式。 (用户键入“4”,框自动更改为“4.00”。)
也许有一种方法可以在关键的新闻发布会上提交未完成的更改?
答案 0 :(得分:0)
Private Sub PriorityScoreBox_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Input.KeyEventArgs)
If e.Key = Input.Key.S And CBool(e.KeyboardDevice.Modifiers And ModifierKeys.Control) Then
Dim bx As BindingExpression = CType(sender, TextBox).GetBindingExpression(TextBox.TextProperty)
bx.UpdateSource()
End If
End Sub