38 lines
1.0 KiB
C#
38 lines
1.0 KiB
C#
using BotPages.Core;
|
|
using BotPages.Core.Messaging;
|
|
|
|
namespace Demo.Pages;
|
|
|
|
/// <summary>
|
|
/// Финальная страница отправки заявки.
|
|
/// </summary>
|
|
public sealed class SubmitPage : SingletonPage
|
|
{
|
|
public override async Task OnEnter(PageContext ctx, CancellationToken ct)
|
|
{
|
|
var progress = new MessageBuilder(ctx);
|
|
|
|
var messageId = await progress
|
|
.Text("Отправка заявки\n7%")
|
|
.SendAsync(ct);
|
|
|
|
int i = 7;
|
|
do
|
|
{
|
|
i += 25;
|
|
Thread.Sleep(TimeSpan.FromMilliseconds(200));
|
|
await progress
|
|
.Text($"Отправка заявки\n{i}%")
|
|
.EditMessage(messageId!)
|
|
.SendAsync(ct);
|
|
}
|
|
while (i < 100);
|
|
|
|
await ctx.Navigation.GoToHomeAsync(ctx, ct);
|
|
}
|
|
|
|
public override Task OnLeave(PageContext ctx, CancellationToken ct)
|
|
{
|
|
return new MessageBuilder(ctx).Text("Заявка отправлена").SendAsync(ct);
|
|
}
|
|
} |