c# - 如何在原始关闭按钮最小化的情况下创建关闭按钮?
问题描述
我想要一个自定义关闭窗口。我的场景是:原来的 X 按钮功能是最小化窗口,而自定义实际上会关闭它。我的默认 X 如下所示:
// add handler by double clicking on Closing event in Properties Box
// My below X button
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;
this.Hide();
}
但是,当我尝试像这样创建自定义关闭按钮时:
void closeButton_Click(object sender, RoutedEventArgs e)
{
Close();
}
它只会像默认值一样最小化。那我该怎么办?谢谢阅读。
解决方案
private bool _forceClose;
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
if(!_forceClose)
{
e.Cancel = true;
this.Hide();
}
}
void closeButton_Click(object sender, RoutedEventArgs e)
{
_forceClose = true;
Close();
}
推荐阅读
- github-actions - 如何使用 Github 操作签出不同的公共存储库,然后从该存储库中添加一些文件,然后构建等
- caching - 您可以重用已经在其他嵌套功能文件中运行的测试结果吗?
- java - Minecraft Forge 1.12.2 “未找到模组信息 要求模组作者提供模组 mcmod.info 文件”
- java - 带有存储库地图的类
- html - 如何以角度制作 RTL 菜单
- css - 如何将 rel="preload" 和 rel="stylesheet" 用于同一个标签?
- javascript - 来自多个函数的 Angular/RxJS 可观察管道
- extjs - 带有自定义选择器的组合框随机折叠
- c++ - 使用 C++ 创建对象数组
- google-sheets-api - 无法使用谷歌表上的时间戳限制编辑权限