button - Xamarin.Forms 按钮在触摸后将被禁用

标签 button mvvm xamarin.forms command mvvmcross

我使用 Xamarin.Forms 和 MvvmCross,但我在应用程序中遇到了问题。 触摸并运行命令后,按钮有时会被禁用。

我向按钮添加了 IsEnabled="True"但没有任何改变

<Button 
    WidthRequest="36" 
    HeightRequest="36" 
    CornerRadius="18" 
    BorderWidth="2" 
    FontSize="18" 
    Text="{Binding OptionText}" 
    Command="{Binding OptionSelectedCommand}" 
    CommandParameter="{Binding .}" 
    IsEnabled="True" 
    VerticalOptions="Center" 
    HorizontalOptions="Center"/>

我希望始终启用此按钮。

我的命令代码是:

new MvxAsyncCommand(async () => 
{ 
    if (option.IsSelected) 
    { 
        option.IsSelected = false; 
    } 
    else 
    { 
        option.OptionGroup.Options.ForEach(c => c.IsSelected = false);
        option.IsSelected = true; 
    } 

    return Task.CompletedTask; 
})

最佳答案

终于我找到了解决这个问题的方法。 问题与 MvxAsyncCommand 有关,通过使用 Command 而不是 MvxAsyncCommand 解决。

我认为 MvvmCross MvxAsyncCommand 有一个关于运行异步方法的错误

关于button - Xamarin.Forms 按钮在触摸后将被禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54018261/

相关文章:

c# - 如何拆分字符串并将其插入 DataTemplate 中的 Binding

xamarin - 如何在 Xamarin 主菜单中的项目之间绘制水平线?

windows - 如何在 UWP 上的 Xamarin.Forms WebView 中启用 WebGL?

Android:许多相同的按钮,onclick 某些情况下不起作用

BlackBerry:带有图像的按钮,用于正常、聚焦和按下状态

c# - WPF MVVM 关于弹出搜索的建议

c# - 来自 ViewModel 的焦点控制

java计算器-清除累加器

image - 按钮悬停效果

wpf - WPF将主题应用于特定项目而不是整个应用程序