由于文本框失去焦点,需要单击两次按钮

时间:2018-01-24 06:17:20

标签: c# wpf mvvm lost-focus updatesourcetrigger

我有一个文本框,其中包含UpdateSourceTrigger = LostFocus。

当我在文本框中键入内容并立即单击按钮时,按钮单击事件不会触发。我认为文本框只是将焦点丢失到按钮上。当我再次点击按钮时,它会触发点击事件。

如何克服这个问题?

这是我的XAML代码:

<TextBox x:Name="ApText"
                         Width="135"
                         Margin="0,4,0,0"
                         HorizontalAlignment="Left"
                         VerticalAlignment="Top"
                         Text="{Binding Value, Mode=TwoWay, NotifyOnValidationError=True, UpdateSourceTrigger=LostFocus, ValidatesOnDataErrors=True, ValidatesOnExceptions=True}"
                         TextWrapping="Wrap"
                         Validation.ErrorTemplate="{DynamicResource UI.ErrorTemplateStyle}" />

<Button
                    Width="100"
                    MinWidth="60"
                    MinHeight="40"
                    Margin="0,8,0,0"
                    HorizontalAlignment="Left"
                    VerticalAlignment="Bottom"
                    Command="{Binding SaveCommand}"
                    Content="Save" />

1 个答案:

答案 0 :(得分:0)

为此找到了解决方案。 刚刚将Button的Clickmode更改为Press。瞧它的工作。

更新代码:

<Button
                    Width="100"
                    MinWidth="60"
                    MinHeight="40"
                    Margin="0,8,0,0"
                    ClickMode="Press"
                    HorizontalAlignment="Left"
                    VerticalAlignment="Bottom"
                    Command="{Binding SaveCommand}"
                    Content="Save" />