blazor-devexpress-dot-blazor-b904fbcb.md
Lists actions that close the Popup.
Namespace : DevExpress.Blazor
Assembly : DevExpress.Blazor.v25.2.dll
NuGet Package : DevExpress.Blazor
public enum PopupCloseReason
| Name | Description |
|---|---|
Programmatically |
You set the Visible property to false or call the CloseAsync method.
|
| EscapePress |
A user presses Escape.
|
| CloseButtonClick |
A user clicks the Close button in the Popup header or clicks a custom button (if you call the predefined CloseCallback to create this button).
|
| OutsideClick |
A user clicks outside the Popup’s boundaries.
|
The following properties accept/return PopupCloseReason values:
You can handle the Popup’s Closing event to process close actions. The event argument’s CloseReason property identifies which action closes the Popup. The property returns one of the PopupCloseReason enumeration values. You can set the Cancel property to true to cancel a close action.
In the following example, neither the Close button in the header nor the custom OK button closes the Popup until a user enables the checkbox in the footer.
<div @onclick="@(() => EulaVisible = true)">
<p>CLICK TO SHOW A POP-UP WINDOW</p>
</div>
<DxPopup @bind-Visible="@EulaVisible"
ShowFooter="true"
HeaderText="DevExpress EULA"
Closing="EulaPopupClosing"
Closed="EulaPopupClosed">
<BodyContentTemplate>
<p>
The terms of our license are fully outlined/described in the Developer Express Inc End User
License Agreement (EULA) included with our product installations. Before you can install and use
a Developer Express Inc product, you must read, understand and accept the terms/conditions of
our EULAs. <a target="" _blank"" rel="" noopener noreferrer"" href=""
https: //www.devexpress.com/support/eulas/"">More info...</a>
</p>
</BodyContentTemplate>
<FooterContentTemplate Context="Context">
<DxCheckBox class="my-margin" @bind-Checked="@EulaAccepted">
I accept the terms of the EULA
</DxCheckBox>
<DxButton RenderStyle="ButtonRenderStyle.Primary" Text="OK" Click="Context.CloseCallback" />
</FooterContentTemplate>
</DxPopup>
@code {
bool EulaAccepted { get; set; }
bool EulaVisible { get; set; }
void EulaPopupClosed(PopupClosedEventArgs args) {
EulaAccepted = false;
}
void EulaPopupClosing(PopupClosingEventArgs args) {
args.Cancel = !EulaAccepted;
}
}
.my-margin {
margin-left: 0;
margin-right: auto;
}
Run Demo: Popup - Response to Show and Close Actions
See Also