在我的Windows C#应用程序的主窗体上,我有这个方法:
public void uploadNew(String newName, String filePath)
{
//Make sure file doesn't exist, then continue
if (!File.Exists(basePath + POnumber + newName))
{
File.Copy(filePath, basePath + POnumber + newName);
LogSubmit("Added New File " + newName);
listFiles();
}
else
{
//The file already exists
}
}
代码的含义确实无关紧要。这就是我想要做的。我需要一个带有一些选项的文件上传表单的新表单。我需要的是将两个变量发送回主窗体以插入该方法。
操作本质上就是这个。
主要表格 - >点击按钮 - >表格2 - >操作 - >将变量发送回uploadNew - >关闭表格2
答案 0 :(得分:0)
我认为你想要的是一个对话框。基本上,你可以在MainForm中做这样的事情:
using(var form = new Form2())
{
if(form.ShowDialog() == DialogResult.Ok)
{
// Newname and Filepapth are properties you set in the Form2
uploadNew(form.NewName, form.Filepath);
}
}
在Form2中,您可能会有一个Ok,Cancel Button。对于Ok Button事件,您可以设置 this.DialogResult = DialogResult.Ok 。在取消事件上,您可以将其设置为其他内容。
这是我的头脑,所以有些事情可能会关闭,但概念是一样的。
另外,最好将UploadFile移动到新类,这样就不会将业务逻辑绑定到UI逻辑中。
此处有一个更完整的示例:How to return a value from a Form in C#?