C# 该活动是否“有效?”;“关闭儿童窗口”;存在?
我有一个问题: 当我们单击childWindow右上角的标记时,“close childWindow”事件是否存在 因为我想取消以这种方式关闭ChildWindow时可以完成的所有更改 我可以用我创建的按钮关闭窗口,但是用户仍然可以用另一种方式关闭ChildWindow,因此,所有更改的数据都不会被取消C# 该活动是否“有效?”;“关闭儿童窗口”;存在?,c#,xaml,silverlight-4.0,childwindow,C#,Xaml,Silverlight 4.0,Childwindow,我有一个问题: 当我们单击childWindow右上角的标记时,“close childWindow”事件是否存在 因为我想取消以这种方式关闭ChildWindow时可以完成的所有更改 我可以用我创建的按钮关闭窗口,但是用户仍然可以用另一种方式关闭ChildWindow,因此,所有更改的数据都不会被取消 谢谢。不抱歉,windows标准窗体上没有“关闭儿童窗口”这样的事件。您可以自己创建,每次打开新窗口时,您都可以从新的windows FormClosed事件中抛出此事件 public even
谢谢。不抱歉,windows标准窗体上没有“关闭儿童窗口”这样的事件。您可以自己创建,每次打开新窗口时,您都可以从新的windows FormClosed事件中抛出此事件
public event EventHandler CloseChildWindow;
然后当你打开新窗口时
Form1 frm = new Form1();
frm.FormClosed += (o, e) =>
{
if(CloseChildWindow!= null)
CloseChildWindow(o, e);
};
你能处理结案事件吗?请参阅-您应该能够有条件地将参数CancelEventArgs的Cancel属性设置为true,以防止在自定义事件处理程序中关闭子窗口。谢谢,这正是我搜索的内容。ChildWindow是silverlight类()-不是标准winforms。哦。。。不幸的是,我对Silverlight不是很熟悉,但是“关闭”活动不是你想要的吗?不完全是。。。在这两种情况下(标准winforms表单和前面提到的silverlight类),我认为您希望“关闭”而不是“关闭”在“Closed”之前引发“Closed”,并允许您在窗口关闭之前取消(使用eventhandler参数)。这就是OP想要做的。Closed只是通知您窗口已关闭,此时您无法对其执行任何操作。我认为他希望在关闭childwindow时取消editform中当前所做的更改。不取消关闭本身?伊芙莉:投票给你是因为你很了不起。@Evelie-根据对原帖子的回复,OP说这正是他想要的。