簡體   English   中英

Template10顯示繁忙的任務延遲

[英]Template10 Show Busy Task Delay

我希望顯示繁忙頁面,同時使用Template10在我的項目中使用某些方法。

目前,我已經實現了:

await Task.Run(() => Methods());

我認為這是不正確的,因為使用這種方式會破壞某些方法(帶有循環),並且bindablebase也是如此。

我的代碼:

private static void SetBusy_NewProject(bool busy, string text = null)
{
    WindowWrapper.Current().Dispatcher.Dispatch(async () =>
    {
        var modal = Window.Current.Content as ModalDialog;
        var view = modal.ModalContent as Busy;
        if (view == null)
            modal.ModalContent = view = new Busy();
        modal.IsModal = view.IsBusy = busy;
        view.BusyText = text;

        await Task.Run(() => Methods.Groups.Body());                
        await Task.Run(() => Methods.Groups.Steel());
        await Task.Run(() => Methods.Groups.CU());
        await Task.Run(() => Methods.Groups.FP());

        await Task.CompletedTask;
        SetBusy_NewProject(false);

    });
}

您能說出某些方法正在起作用的同時顯示“忙碌”頁面的正確方法嗎?

任何幫助表示贊賞。

要使用Hamburger模板中的Template10 Busy頁面,只需在Tasks之前調用Views.Busy.SetBusy(true, "My Loading text")方法,在等待的Tasks之后Views.Busy.SetBusy(false) 無需復制忙類的代碼。 例如。:

Views.Busy.SetBusy(true, "My Loading text");

await Task.Run(() => Methods.Groups.Body());                
await Task.Run(() => Methods.Groups.Steel());
await Task.Run(() => Methods.Groups.CU());
await Task.Run(() => Methods.Groups.FP());

Views.Busy.SetBusy(false);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM