窗口打开时锁定菜单项,关闭时解锁
本文关键字:解锁 锁定 窗口 菜单项 | 更新日期: 2023-09-27 18:23:47
我有一个窗口,我想一次只允许打开它的一个实例。他们可以打开/关闭窗口,但不能同时打开同一窗口的多个副本。
我有一个菜单,其中有一个选项,单击后会打开"产品选择"窗口。ListProductList是我的按钮:
private void ListProductListCanExecute(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = _productListCanExecute;
//_productListCanExecute = !_productListCanExecute;
}
private void ListProductList(object sender, ExecutedRoutedEventArgs e)
{
_productListCanExecute = false;
ProductSelection pl = new ProductSelection(productCategoryList, productStyleList, productList);
pl.Show();
}
请注意,我将ListProductList按钮的e.CanExecute设置为false,以确保事件处理程序不会运行,因此不会打开更多窗口。
现在,我如何检测到ProductSelection窗口已经关闭,以便将_productListCanExecute设置回true?这不是一个模态窗口,因为我想让他们做其他事情。
这里最简单的解决方案可能是将pl变量设置为全局变量。
每当单击该按钮时,只需"显示"现有窗口即可。