先运行的主窗体,打开子窗体,然后在子窗体里this.Close();然后子窗体虽然关闭了,但是出现了异常错误,提示应用程序发生了未经处理的异常,路径名不能为null,参数名:path
在主窗体(Form1)中声明public string r=null;然后弹出子窗体
在子窗体中public Form1 F=new Form1();
r=" asdadsasfaaf等等";
this.Close();
然后主窗体中r还是null,为什么啊?
就是这么写的,在关闭子窗体之前验证一下确实已经赋值了,一关闭回到主窗体就变null
追答这个就是变量的生命周期 只在调用时 有效 调用结束 就无效了
发不上来,和互联网不能通的
追答那没办法了
追问在主窗体(Form1)中声明public string r=null;然后弹出子窗体
在子窗体中public Form1 F=new Form1();
r=" asdadsasfaaf等等";
this.Close();
然后主窗体中r还是null,为什么啊?
你又没传值,肯定是null啊
追问我在子窗体里面传值了,
追答亲,用构造传值
Form1的构造
private string r;
public Form1(string r1)
{
this.r = r1;
}
在子窗体中
Form1 F=new Form1(“asdasdadfas”);
C#关闭子窗体,返回主窗体时出错
(1)使用静态变量 :在主窗体将r声明为静态的 如 public static string path=null;在子窗体里对主窗体的path赋值 Form1.path="D\\\\test.txt";这个就可以关闭子窗体了 this.close();(2)使用主窗体传参 主窗体声明变量 public string path=null;在变子窗体里声明 主窗体变量 Form1 form1=n...
c#主窗体按钮关闭子窗体时跳出异常,说子窗体中的txt文件被另一进程应用...
你要在退出子窗体前将正在使用的文件关闭。file.close(),否则会有这个异常
C#窗体关闭时出现错误
因为你没有处理,点击取消时没有处理事件 result = MessageBox.Show("确认退出?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);if (result == DialogResult.OK){ Application.ExitThread();} else { e.Cancel = true;}
C#中,点击窗体的右上角的红叉关闭窗体了,再次打开提示未释放的原因...
之前的错误是因为窗体关闭后,对象虽然还在,但是窗体资源已经被释放了,再次show的时候就会抛出异常。也可以这样解决:响应FrmEditAdmin的Close事件,不要真正关闭窗口(好像是e.Cancel=true),而是调用hide隐藏(this.Hide())。
c#怎么关闭子窗体时刷新主窗体,要代码
你把所有绑定主窗口数据的代码全部写在一个方法里面,叫LoadDate()然后在在子窗体的showDialog()后面(var dlg=form.ShowDialog();)写上 if(dlg==DialogResult.OK)LoadDate();就像这样:
C#子窗口关闭时怎样立刻刷新主窗口
2。如果使用的是直接创建的窗体,并且是关联窗体(使用了Owner),可以在关闭子窗体前加入 TextBox tb = (TextBox)OwnerForm.Controls["textBox1"]; \/\/ 从Owner窗体获得控件 tb.Text = textBox1.Text; \/\/ 更新Owner窗体空间属性值 3。如果使用的是直接创建的窗体,并且没有该窗体与创建它的窗...
c#中关闭子窗口怎样刷新主窗口 关闭子窗体然后刷新主窗体中的datagradevie...
你可以给子窗口关闭是给一个返回值,父窗口判断返回值 父窗口代码 Form2 f = new Form2();if (f.ShowDialog() == DialogResult.OK){ \/\/刷新 } 子窗口代码 private void Form2_FormClosing(object sender, FormClosingEventArgs e){ this.DialogResult = DialogResult.OK;} ...
C#Winform 怎么实现隐藏主窗体,关闭子窗体后又回到主窗体?
m1为主窗体 m2为子窗体 在m1中.this.visible=false;\/\/在m2中定义一个变量,用于记忆主窗体;public Form ParentForm; \/\/用公共变量或者属性都可以 \/\/把当前窗体送给子窗体记忆;m2.ParentForm=this;m2.Show();\/\/在m2关闭时;this.ParentForm.Visible=true;...
C#中关闭窗口出现错误
在窗体内部调用close没错 怕的是 调用之后 在主程序中有下面这样的句子 Application.Run(new Form1());会提示说不能访问已经释放的资源而出错
C#的WinForm程序子窗口关闭后仍存在进程问题.
窗体全是主线程创建的,仍存在应该是你资源没有释放干净。如子窗体中海油线程在跑等等。