Files
egwcorelib/EgwCoreLib.BlazorTest/Pages/TestDialog.razor
T

68 lines
2.1 KiB
Plaintext

@page "/TestDialog"
<h3>Pure Blazor Prompt Test</h3>
<hr />
<i class="fa-solid fa-spinner fa-3x fa-spin"></i>
<hr />
<button class="btn btn-primary" @onclick="ShowMessage">Show Message</button>
<button class="btn btn-warning" @onclick="ShowConfirm">Show Confirm</button>
<button class="btn btn-success" @onclick="ShowPrompt">Show Prompt</button>
<hr />
<p>@resultMessage</p>
<BootstrapModal @ref="modal" Title="@cTitle" Message="@cMessage" Mode="@cMode" Placeholder="@cPlaceholder" UserInput="@cUserInput" />
@code {
private BootstrapModal? modal;
private CustomDialog? promptDialog;
private string resultMessage = "";
private async Task AskName()
{
var name = await promptDialog!.ShowAsync();
// var name = await promptDialog!.ShowAsync("Come ti chiami?", "(Super) Mario Rossi");
resultMessage = name is null ? "User cancelled." : $"Hello, {name}!";
}
private string cTitle = "";
private string cMessage = "";
private string cPlaceholder = "";
private string cUserInput = "";
private BootstrapModal.ModalMode cMode = BootstrapModal.ModalMode.Message;
private async Task ShowMessage()
{
cTitle = "Information";
cMessage = "This is a standard message.";
cMode = BootstrapModal.ModalMode.Message;
await modal!.ShowAsync<bool>();
resultMessage = "Message closed.";
}
private async Task ShowConfirm()
{
cTitle = "Confirm Action";
cMessage = "Are you sure you want to continue?";
cMode = BootstrapModal.ModalMode.Confirm;
bool confirmed = await modal!.ShowAsync<bool>();
resultMessage = confirmed ? "User confirmed." : "User cancelled.";
}
private async Task ShowPrompt()
{
cTitle = "Enter Name";
cMessage = "What is your name?";
cPlaceholder = "Type your name...";
cUserInput = "";
cMode = BootstrapModal.ModalMode.Prompt;
string? name = await modal!.ShowAsync<string?>();
resultMessage = name is null ? "User cancelled." : $"Hello, {name}!";
}
}