Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从具有相同值的其他项目调用windows窗体_C#_Vb.net_Winforms - Fatal编程技术网

C# 从具有相同值的其他项目调用windows窗体

C# 从具有相同值的其他项目调用windows窗体,c#,vb.net,winforms,C#,Vb.net,Winforms,我打开一个表单并初始化该表单中的函数。进度条正在运行。然后我用相同的函数隐藏表单。现在我需要显示另一个项目中具有相同进度条值的窗口。是否可以在不使用新关键字的情况下调用同一表单 注意:用于隐藏表单的函数在VB.NET中,用于显示表单的函数在C#.NET中 这里是我的代码VB.NET(函数将隐藏窗口) 函数的作用是:初始化进度条并上传文件。 因此,如果我需要显示C#project中的窗口,我该怎么做?如果我创建了一个新项目,progressbar值也会变成默认值。这个问题有什么解决办法吗 priv

我打开一个表单并初始化该表单中的函数。进度条正在运行。然后我用相同的函数隐藏表单。现在我需要显示另一个项目中具有相同进度条值的窗口。是否可以在不使用新关键字的情况下调用同一表单

注意:用于隐藏表单的函数在VB.NET中,用于显示表单的函数在C#.NET中

这里是我的代码VB.NET(函数将隐藏窗口)

函数的作用是:初始化进度条并上传文件。 因此,如果我需要显示C#project中的窗口,我该怎么做?如果我创建了一个新项目,progressbar值也会变成默认值。这个问题有什么解决办法吗

private void btnFiles_Click(object sender, EventArgs e)
        {
            ICloudProvider.UploadingList objUpload = new ICloudProvider.UploadingList();
            objUpload.Show();
        }

如果我在C#中遵循上述函数,所有控件都将达到其默认值。所以进度条中没有进度

在表单上创建公共共享变量,以存储对VB程序中创建的实例的引用

表单将有以下行:

Public Shared Instance as UploadingList
创建表单时,需要设置此变量:

Dim objUpload As New UploadingList
UploadingList.Instance = objUpload
objUpload.Show()
objUpload.Hide()
objUpload.UploadFiles()
现在,从C#程序开始,您不需要创建表单的新实例,只需使用现有实例即可:

private void btnFiles_Click(object sender, EventArgs e)
{
  ICloudProvider.UploadingList objUpload = ICloudProvider.UploadingList.Instance;
  if(objUpload!=null)
  {
    objUpload.Show();
  }
}

记得在表单关闭时将实例变量设置为null(VB中为nothing)。

谢谢dude。但我已经用你告诉我的方法解决了这个问题。非常感谢你。
private void btnFiles_Click(object sender, EventArgs e)
{
  ICloudProvider.UploadingList objUpload = ICloudProvider.UploadingList.Instance;
  if(objUpload!=null)
  {
    objUpload.Show();
  }
}