Getting Started with Blazor Toast in Blazor Web App
31 Oct 20258 minutes to read
This section explains how to add the Blazor Toast component to a Blazor Web App using Visual Studio or Visual Studio Code.
Prerequisites
Create a new Blazor Web App in Visual Studio
Create a Blazor Web App using Visual Studio 2022 via Microsoft templates or the Syncfusion® Blazor extension.
Configure the appropriate interactive render mode and interactivity location when creating the Blazor Web App.
Install Syncfusion® Blazor Notifications and Themes NuGet in the App
To add the Blazor Toast component, open the NuGet Package Manager in Visual Studio (Tools → NuGet Package Manager → Manage NuGet Packages for Solution), then install Syncfusion.Blazor.Notifications and Syncfusion.Blazor.Themes.
For WebAssembly or Auto render modes in a Blazor Web App, install the Syncfusion® Blazor NuGet packages in the Client project. For Server render mode, install them in the Server project.
Alternatively, execute the following Package Manager commands:
Install-Package Syncfusion.Blazor.Notifications -Version 31.2.2
Install-Package Syncfusion.Blazor.Themes -Version 31.2.2
NOTE
Syncfusion® Blazor components are available on nuget.org. Refer to the NuGet packages topic for the full list of packages and components.
Prerequisites
Create a new Blazor Web App in Visual Studio Code
Create a Blazor Web App using Visual Studio Code via Microsoft templates or the Syncfusion® Blazor extension.
Configure the appropriate interactive render mode and interactivity location when creating the Blazor Web App.
For example, in a Blazor Web App with the Auto interactive render mode, use the following commands:
dotnet new blazor -o BlazorWebApp -int Auto
cd BlazorWebApp
cd BlazorWebApp.Client
NOTE
For more information on creating a Blazor Web App with various interactive modes and locations, refer to this link.
Install Syncfusion® Blazor Notifications and Themes NuGet in the App
For WebAssembly or Auto render modes in a Blazor Web App, install the Syncfusion® Blazor NuGet packages in the Client project.
- Open the integrated terminal in Visual Studio Code.
- Navigate to the project directory that contains the
.csprojfile. - Run the following commands to install Syncfusion.Blazor.Notifications and Syncfusion.Blazor.Themes and restore dependencies.
dotnet add package Syncfusion.Blazor.Notifications -v 31.2.2
dotnet add package Syncfusion.Blazor.Themes -v 31.2.2
dotnet restore
NOTE
Syncfusion® Blazor components are available on nuget.org. Refer to the NuGet packages topic for the full list of packages and components.
Register Syncfusion® Blazor Service
| Interactive Render Mode | Description |
|---|---|
| WebAssembly or Auto | Open ~/_Imports.razor file from the Client project. |
| Server | Open ~/_Imports.razor file located in the Components folder. |
Import the Syncfusion.Blazor and Syncfusion.Blazor.Notifications namespaces:
@using Syncfusion.Blazor
@using Syncfusion.Blazor.NotificationsRegister the Syncfusion® Blazor service in the ~/Program.cs file of the Blazor Web App.
If the Interactive Render Mode is set to WebAssembly or Auto, register the Syncfusion® Blazor service in both Program.cs files (Server and Client).
using Syncfusion.Blazor;
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.Services.AddRazorComponents()
.AddInteractiveServerComponents()
.AddInteractiveWebAssemblyComponents();
builder.Services.AddSyncfusionBlazor();
var app = builder.Build();
....using Syncfusion.Blazor;
var builder = WebAssemblyHostBuilder.CreateDefault(args);
builder.Services.AddSyncfusionBlazor();
await builder.Build().RunAsync();If the Interactive Render Mode is set to Server, the project contains a single ~/Program.cs file. In this case, register the Syncfusion® Blazor service only in that file.
using Syncfusion.Blazor;
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.Services.AddRazorComponents()
.AddInteractiveServerComponents();
builder.Services.AddSyncfusionBlazor();
var app = builder.Build();Add stylesheet and script resources
The theme stylesheet and script are provided via NuGet as Static Web Assets. Include the stylesheet reference in the <head> section and the script reference at the end of the <body> in the ~/Components/App.razor file:
<head>
<!-- ... -->
<link href="_content/Syncfusion.Blazor.Themes/bootstrap5.css" rel="stylesheet" />
</head>
<body>
<!-- ... -->
<script src="_content/Syncfusion.Blazor.Core/scripts/syncfusion-blazor.min.js" type="text/javascript"></script>
</body>NOTE
See the Blazor Themes topic for additional options to reference themes (Static Web Assets, CDN, and CRG). Also, refer to Adding Script Reference for approaches to add script references in a Blazor application.
Add Syncfusion® Blazor Toast component
Add the Syncfusion® Blazor Toast component to a page in the ~/Pages folder. If the interactivity location is set to Per page/component, define a render mode at the top of the ~/Pages/*.razor component as follows:
| Interactivity location | RenderMode | Code |
|---|---|---|
| Per page/component | Auto | @rendermode InteractiveAuto |
| WebAssembly | @rendermode InteractiveWebAssembly | |
| Server | @rendermode InteractiveServer | |
| None | — |
NOTE
If the Interactivity Location is set to
Globaland the Render Mode is set toAuto,WebAssembly, orServer, the render mode is configured in theApp.razorfile by default.
Render mode directive:
@* Desired render mode defined here *@
@rendermode InteractiveAutoToast component example:
<div class="col-lg-12 control-section toast-default-section">
<SfToast ID="toast_default" @ref="ToastObj" Title="Adaptive Tiles Meeting" Content="@ToastContent" Timeout="5000" Icon="e-meeting">
<ToastPosition X="@ToastPosition"></ToastPosition>
</SfToast>
<div class="col-lg-12 col-sm-12 col-md-12 center">
<div id="toastBtnDefault" style="margin: auto; text-align: center">
<button class="e-btn" @onclick="@ShowOnClick">Show Toasts</button>
<button class="e-btn" @onclick="@HideOnClick">Hide All</button>
</div>
</div>
</div>
<style>
#toast_default .e-meeting::before {
content: "\e705";
font-size: 17px;
}
.bootstrap4 #toast_default .e-meeting::before {
content: "\e763";
font-size: 20px;
}
</style>
@code {
private SfToast ToastObj;
private string ToastPosition = "Right";
private string ToastContent = "Conference Room 01 / Building 135 10:00 AM-10:30 AM";
private async Task ShowOnClick()
{
await ToastObj.ShowAsync();
}
private async Task HideOnClick()
{
await ToastObj.HideAsync("All");
}
}Use Ctrl+F5 (Windows) or ⌘+F5 (macOS) to launch the application. The Syncfusion® Blazor Toast component renders in the default web browser.
NOTE
See Also
- Show or hide toast from any page using service in Blazor
- Getting Started with Syncfusion® Blazor for client-side in .NET Core CLI
- Getting Started with Syncfusion® Blazor for server-side in Visual Studio
- Getting Started with Syncfusion® Blazor for server-side in .NET Core CLI
NOTE
An interactive Blazor Toast example demonstrates how to render and configure the Toast component.