我有一个Windows Phone应用程序。
每当我将按钮可见性设置为折叠并且再次使其可见时,我必须再次单击它以使其触发它所绑定的命令。我怎么能在第一次之后再开火呢?它甚至在第一次都没有打到任何代码。可见性和按钮命令都是通过将其绑定到视图模型属性来设置的。
答案 0 :(得分:0)
我猜你使用的是MVVM灯?
如果是这样,当我使用ICommand时,我遇到了类似的问题。如果您只使用内置中继命令,那么这就解决了我的问题。
答案 1 :(得分:0)
我认为问题来自“焦点”问题。我怀疑焦点被可见性的变化所迷惑。然后使用第一次单击来恢复焦点。
为了避免这个问题,我在改变可见性
之后强制将焦点放在按钮上 private void RequestDialogBoxEvent(object sender)
{
this.DialogBox.Visibility = System.Windows.Visibility.Visible;
this.buttonOK.Focus();
}
使用对话框的XAML:
<Border x:Name="DialogBox" Background="Black" Grid.Row="1" Visibility="Collapsed" >
<Grid Margin="0,20" VerticalAlignment="Center" Background="Black">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="Confirm ?" />
<Button x:Name="buttonOK" Content="OK" Grid.Row="1" Click="Button_Click" />
</Grid>
</Border>