Files
2026-05-05 11:20:29 +02:00

73 lines
2.2 KiB
Plaintext

@page "/TestDialog"
<div class="card">
<div class="card-header">
<h3>Pure Blazor Prompt Test</h3>
</div>
<div class="card-body">
<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>
</div>
</div>
<BootstrapModal @ref="modal" Title=@cTitle Message=@cMessage Mode=@cMode Placeholder=@cPlaceholder UserInput=@cUserInput Size="BootstrapModal.ModalSize.Normal" UserOptions=@cOpt BigButtons=@cBigBtn TitleCss="bg-secondary bg-opacity-25 bg-gradient" />
@code {
private BootstrapModal? modal;
private string resultMessage = "";
private string cTitle = "";
private string cMessage = "";
private string cPlaceholder = "";
private string cUserInput = "";
private bool cBigBtn = false;
private Dictionary<bool, string>? cOpt = null;
private BootstrapModal.ModalMode cMode = BootstrapModal.ModalMode.ND;
private async Task ShowMessage()
{
cTitle = "Information";
cMessage = "This is a standard message.";
cMode = BootstrapModal.ModalMode.Message;
cOpt = null;
cBigBtn = false;
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;
cOpt = new();
cOpt.Add(true, "Si");
cOpt.Add(false, "No");
cBigBtn = true;
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;
cOpt = null;
cBigBtn = false;
string? name = await modal!.ShowAsync<string?>();
resultMessage = name is null ? "User cancelled." : $"Hello, {name}!";
}
}