程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Xamarin,如何从命令中获得完成状态?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Xamarin,如何从命令中获得完成状态??

开发过程中遇到Xamarin,如何从命令中获得完成状态?的问题如何解决?下面主要结合日常开发的经验,给出你关于Xamarin,如何从命令中获得完成状态?的解决方法建议,希望对你解决Xamarin,如何从命令中获得完成状态?有所启发或帮助;

我有一个 ListVIEw,正在使用 SELEctedItem 调用命令并显示模式视图。

但是,我遇到了一个问题,即用户可以在列表视图行上多次点击,并且在加载视图之前会显示多个模式视图。当然,这只发生在速度较慢的设备上。

是因为该命令没有任何回调。

我通常不会在这里粘贴代码,但在这种情况下,我认为提供屏幕截图更具描述性。

我研究了 AsyncCommands,但这些似乎更多地用于处理错误。

我目前正在虑退出模态时触发的订阅方法,但是我认为肯定有另一种我没有想到的方法。

Xamarin,如何从命令中获得完成状态?

解决方法

您可以尝试使用 Boolean as IsSELEcted 并在用户单击列表中的项目时使 IsSELEcted 为真并在 setter 中更改您的条件,如下所示。操作完成后重置标志。

这是,不会有任何模态重复。这是我从你的问题中了解到的,如果还有其他问题,请告诉我。

if( _LOCATIOnAssetSELEcted || !IsSELEcted )
{
    IsSELEcted = true;
    _LOCATIOnAssetSELEcted  = value; 
    ..... //your code
    
    _LOCATIOnAssetSELEcted  = null;
    IsSELEcted = false;
}

,

您可以将逻辑移到命令中以确保它不会多次执行。这是使用此方法作为命令的示例/模板表单应用程序上的一个片段。锁似乎没有必要。

@H_673_38@async void OnItemSELEcted(Item item) { //lock (SELEctLock) //{ if (item == null || SELEctionOn) return; SELEctionOn = true; //} System.Diagnostics.Debug.WriteLine($"{item.Text} SELEcted"); // This will push the ItemDetailPage onto the navigation stack await SHell.Current.GoToAsync($"{nameof(ItemDetailPagE)}?{nameof(ItemDetailViewModel.ItemId)}={item.ID}"); SELEctionOn = false; }

大佬总结

以上是大佬教程为你收集整理的Xamarin,如何从命令中获得完成状态?全部内容,希望文章能够帮你解决Xamarin,如何从命令中获得完成状态?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: