Accent color
MessageBox
BitMessageBox is a pre-implemented box for showing messages with title and body.
Notes
To use this component, you need to install the
Bit.BlazorUI.Extras
nuget package, as described in the Optional steps of the
Getting started page.
Usage
Basic
<BitCard Style="padding:0">
<BitMessageBox Title="It's a title" Body="It's a body." />
</BitCard>The basic usage of the BitMessageBox, rendered inline inside a BitCard.
It's a title
It's a body.
BitModal
<BitButton OnClick="() => isModalOpen = true">Show</BitButton> <BitModal @bind-IsOpen="isModalOpen"> <BitMessageBox OnClose="() => isModalOpen = false" Title="This is the Title" Body="This is the Body!" /> </BitModal>@code { private bool isModalOpen; }
Show the BitMessageBox inside a BitModal component and close it using the OnClose event.
BitProModal
<BitButton OnClick="() => isProModalOpen = true">Show</BitButton> <BitProModal @bind-IsOpen="isProModalOpen"> <BitMessageBox OnClose="() => isProModalOpen = false" Title="This is the Title" Body="This is the Body!" /> </BitProModal>@code { private bool isProModalOpen; }
Show the BitMessageBox inside a BitProModal component and close it using the OnClose event.
BitModalService
<BitButton OnClick="ShowMessageBox">Show MessageBox</BitButton> <BitModalContainer />@code { [AutoInject] private BitModalService modalService { get; set; } = default!; private async Task ShowMessageBox() { await modalService.Show<BitMessageBox>(modalRef => new() { { nameof(BitMessageBox.Title), "This is a title" }, { nameof(BitMessageBox.Body), "This is a body." }, { nameof(BitMessageBox.OnClose), EventCallback.Factory.Create(this, modalRef.Close) } }); } }
Show the BitMessageBox as the content of a modal shown by the BitModalService.
BitProModalService
<BitButton OnClick="ShowProMessageBox">Show MessageBox</BitButton> <BitProModalContainer />@code { [AutoInject] private BitProModalService proModalService { get; set; } = default!; private async Task ShowProMessageBox() { await proModalService.Show<BitMessageBox>(modalRef => new() { { nameof(BitMessageBox.Title), "This is a title" }, { nameof(BitMessageBox.Body), "This is a body." }, { nameof(BitMessageBox.OnClose), EventCallback.Factory.Create(this, modalRef.Close) } }); } }
Show the BitMessageBox as the content of a pro modal shown by the BitProModalService.
BitMessageBoxService
<BitButton OnClick="ShowMessageBoxService">Show MessageBox</BitButton> @* The service uses the BitProModalService when available, otherwise the BitModalService. *@ @* Mount the matching container: BitProModalContainer for the pro modal, BitModalContainer otherwise. *@ <BitProModalContainer />@code { [AutoInject] private BitMessageBoxService messageBoxService { get; set; } = default!; private async Task ShowMessageBoxService() { await messageBoxService.Show("TITLE", "BODY"); } }
Show the BitMessageBox with a simple call to the Show method of the BitMessageBoxService.
This service uses the BitProModalService or the BitModalService (whichever is available) to show the message box,
preferring the BitProModalService when both are available.
Style & Class
<style>
.custom-msg {
background: linear-gradient(180deg, #3e0f0f, transparent) #000;
}
.custom-msg-btn {
color: #fff;
font-weight: bold;
border-radius: 1rem;
border-color: #8f0101;
transition: background-color 1s;
background: linear-gradient(90deg, #d10000, transparent) #8f0101;
}
.custom-msg-btn:hover {
color: #fff;
font-weight: bold;
border-color: #8f0101;
background-color: #8f0101;
}
</style>
<BitCard Style="padding:0">
<BitMessageBox Title="It's a title"
Body="It's a body."
Styles="@(new() { Root = "background: linear-gradient(180deg, #222444, transparent) #000", OkButton = new() { Root = "border-radius:1rem" } })" />
</BitCard>
<BitCard Style="padding:0">
<BitMessageBox Title="It's a title"
Body="It's a body."
Classes="@(new() { Root = "custom-msg", OkButton = new() { Root = "custom-msg-btn" } })" />
</BitCard>Customize the appearance of BitMessageBox using styles and CSS classes.
It's a title
It's a body.
It's a title
It's a body.
RTL
<BitCard Style="padding:0">
<BitMessageBox Dir="BitDir.Rtl" Title="عنوان پیام" Body="متن تست پیام..." OkText="تایید" />
</BitCard>Use BitMessageBox in right-to-left (RTL).
عنوان پیام
متن تست پیام...
API
BitMessageBox parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| Body | string? | null | The body of the message box. |
| Classes | BitMessageBoxClassStyles? | null | Custom CSS classes for different parts of the message box. |
| OkText | string? | null | The text of the Ok button. |
| OnClose | EventCallback | The event callback for closing the message box. | |
| Styles | BitMessageBoxClassStyles? | null | Custom CSS styles for different parts of the message box. |
| Title | string? | null | The title of the message box. |
BitComponentBase parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| AriaLabel | string? | null | Gets or sets the accessible label for the component, used by assistive technologies. |
| Class | string? | null | Gets or sets the CSS class name(s) to apply to the rendered element. |
| Dir | BitDir? | null | Gets or sets the text directionality for the component's content. |
| ForceAnimation | bool | false | Gets or sets a value indicating whether the component's animations play at their full duration even when reduced motion is requested. |
| HtmlAttributes | Dictionary<string, object> | new Dictionary<string, object>() | Captures additional HTML attributes to be applied to the rendered element, in addition to the component's parameters. |
| Id | string? | null | Gets or sets the unique identifier for the component's root element. |
| IsEnabled | bool | true | Gets or sets a value indicating whether the component is enabled and can respond to user interaction. |
| Style | string? | null | Gets or sets the CSS style string to apply to the rendered element. |
| TabIndex | string? | null | Gets or sets the tab order index for the component when navigating with the keyboard. |
| Visibility | BitVisibility | BitVisibility.Visible | Gets or sets the visibility state (visible, hidden, or collapsed) of the component. |
BitComponentBase public members
| Name | Type | Default value | Description |
|---|---|---|---|
| UniqueId | Guid | Guid.NewGuid() | Gets the readonly unique identifier for the component's root element, assigned when the component instance is constructed. |
| RootElement | ElementReference | Gets the reference to the root HTML element associated with this component. |
BitMessageBoxClassStyles properties
| Name | Type | Default value | Description |
|---|---|---|---|
| Root | string? | null | Custom CSS classes/styles for the root element of the BitMessageBox. |
| Container | string? | null | Custom CSS classes/styles for the container of the BitMessageBox. |
| Header | string? | null | Custom CSS classes/styles for the header of the BitMessageBox. |
| Title | string? | null | Custom CSS classes/styles for the title of the BitMessageBox. |
| Spacer | string? | null | Custom CSS classes/styles for the BitSpacer of the BitMessageBox. |
| CloseButton | BitButtonClassStyles? | null | Custom CSS classes/styles for the CloseButton of the BitMessageBox. |
| Body | string? | null | Custom CSS classes/styles for the body of the BitMessageBox. |
| Footer | string? | null | Custom CSS classes/styles for the footer of the BitMessageBox. |
| OkButton | BitButtonClassStyles? | null | Custom CSS classes/styles for the OkButton of the BitMessageBox. |
BitVisibility enum
| Name | Value | Description |
|---|---|---|
| Visible | 0 | The content of the component is visible. |
| Hidden | 1 | The content of the component is hidden, but the space it takes on the page remains (visibility:hidden). |
| Collapsed | 2 | The component is hidden (display:none). |
BitDir enum
| Name | Value | Description |
|---|---|---|
| Ltr | 0 | Ltr (left to right) is to be used for languages that are written from the left to the right (like English). |
| Rtl | 1 | Rtl (right to left) is to be used for languages that are written from the right to the left (like Arabic). |
| Auto | 2 | Auto lets the user agent decide. It uses a basic algorithm as it parses the characters inside the element until it finds a character with a strong directionality, then applies that directionality to the whole element. |
Feedback
You can give us your feedback through our GitHub repo by filing a new Issue or starting a new Discussion.
Or you can review / edit this page on GitHub.