我创建了一个带有按钮 Save
、Close
和 Cancel
的 UserControl。我想关闭表单而不保存取消按钮,提示消息保存在关闭按钮和保存而不关闭保存按钮。通常,我会在“取消”按钮上使用 this.Close()
,但 UserControl 没有这样的选项。所以我想我必须为此设置一个属性。
向下滚动 “可能已经有了答案的问题”
部分,我遇到了这个问题:How to close a ChildWindow from an UserControl button loaded inside it?我使用了以下 C# 代码:
private void btnCancel_Click(object sender, EventArgs e)
{
ProjectInfo infoScreen = (ProjectInfo)this.Parent;
infoScreen.Close();
}
这对一个屏幕有效,但我想知道我是否必须对我拥有的所有屏幕应用此代码?我认为应该有一种更有效的方法。所以我的问题是:我是否需要为我拥有的每个表单应用此代码,还是有另一种(更有效的)方法?
最佳答案
你可以使用
((Form)this.TopLevelControl).Close();
关于c# - 如何在 UserControl 中关闭窗体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13527474/