New to Telerik UI for Blazor? Start a free 30-day trial
Window Actions
Updated on Mar 31, 2026
The Window offers action buttons in its titlebar:
- Built-in actions
MaximizeMinimizeClose
- Custom action buttons
To define action buttons, populate the WindowActions tag of the Window with WindowAction instances.
Action Parameters
Action buttons expose the following properties:
| Parameter | Type and Default Value | Description |
|---|---|---|
Name | string | The name of the action. Can be one of the built-in actions (see above), or a custom action name. |
Hidden | bool | Sets if the action button is rendered. Do not use for the Minimize and Maximize actions, because the Window manages their visibility internally, based on the component state. |
OnClick | EventCallback<MouseEventArgs> | An event handler to respond to custom action clicks. |
Icon | string | The CSS class of the icon to be rendered. Use with the Telerik font icons, or set your own font icon class. |
Title | string | The title HTML attribute of the action button. |
Built-in Actions
The built-in actions of a Window
<TelerikWindow @bind-Visible="@WindowVisible"
Width="400px"
Height="200px"
Resizable="false">
<WindowTitle>Window Title</WindowTitle>
<WindowActions>
<WindowAction Name="Minimize" />
<WindowAction Name="Maximize" />
<WindowAction Name="Close" Hidden="@HideClose" />
</WindowActions>
<WindowContent>
<label class="k-checkbox-label">
<TelerikCheckBox @bind-Value="@HideClose" /> Hide Close Action
</label>
</WindowContent>
</TelerikWindow>
<TelerikButton OnClick="@(() => WindowVisible = !WindowVisible)">Toggle Window</TelerikButton>
@code {
private bool WindowVisible { get; set; } = true;
private bool HideClose { get; set; }
}
Setting custom icons for the built-in actions is not supported. If you need to specify a custom icon for a built-in action, use a custom action instead.
Custom Actions
You can create a custom action icon and you must provide its OnClick handler.
Handling a custom action
<TelerikWindow @bind-Visible="@WindowVisible"
Width="400px"
Height="200px"
Resizable="false">
<WindowTitle>Window Title</WindowTitle>
<WindowActions>
<WindowAction Name="Minimize" />
<WindowAction Icon="@SvgIcon.InfoCircle" OnClick="@OnCustomActionClick" />
<WindowAction Icon="@("fa-solid fa-circle-user")" OnClick="@OnCustomActionClick" />
<WindowAction Name="Maximize" />
<WindowAction Icon="@SvgIcon.XCircle" OnClick="@(() => WindowVisible = false)" />
</WindowActions>
<WindowContent>
<p>Last custom action click at: @CustomActionLog</p>
</WindowContent>
</TelerikWindow>
<TelerikButton OnClick="@(() => WindowVisible = !WindowVisible)">Toggle Window</TelerikButton>
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.1/css/all.min.css" rel="stylesheet" />
@code {
private bool WindowVisible { get; set; }
private string CustomActionLog { get; set; } = string.Empty;
private async Task OnCustomActionClick()
{
CustomActionLog = DateTime.Now.ToString("HH:mm:ss.fff");
}
}