有一个关于winfrom的简单问题想请教一下

cjol 2005-04-18 10:51:04
form1是一个记录列表

form2是新增记录的窗口

当我填写好form2的内容提交后,我希望这时候form1的内容也跟着刷新

请问我该怎么做???
...全文
106 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
s2722357 2005-04-18
  • 打赏
  • 举报
回复
因为你如果在Form2里从新NEW的话,你是重新实例化一个Form1,以前Form1里的所有咚咚当然都访问不到,所以你要把原先那个实例传递进来



Form2 f2=new Form2(this)
f2.Show()
f1.什么什么咚咚


Form2里的
public Form2()
{
}
改写成
Form1 frm;

public Form2(Form frm)
{
frm.咚咚;
}

cjol 2005-04-18
  • 打赏
  • 举报
回复
能解释一下吗
s2722357 2005-04-18
  • 打赏
  • 举报
回复
Form1 f1;

Form2 f2=new Form2(Form f1)
f2.Show()
f1.什么什么咚咚
cjol 2005-04-18
  • 打赏
  • 举报
回复
懂了一点点,但是还不是很清楚
gudengyeren 2005-04-18
  • 打赏
  • 举报
回复
支持楼上的,
ewan_shu 2005-04-18
  • 打赏
  • 举报
回复
把form1的数据源作为form2的tag传入,然后操作form2的数据就可以了
DataTable dt = new DataTable();
form2 frm = new form2();
frm.Tag = dt;
frm.Show();
在form2中
DataTable dt = (DataTable)Tag;
然后操作就可以了
cjol 2005-04-18
  • 打赏
  • 举报
回复
我是这样生成form2的

Form2 f2=new Form2()
f2.Show()

你能具体告诉我怎么做吗?谢谢了
s2722357 2005-04-18
  • 打赏
  • 举报
回复
在生成form2的时候把form1的实例传递到form2中
然后form1.就可以了
但是form1里要调用的控件要用public哦 ~
JasonHeung 2005-04-18
  • 打赏
  • 举报
回复
public class Form1
{
buttonAdd_Click(...)
{
Form2 frm = new From2(this.dataset1);
}
}

public class Form2
{
public Form2(DataSet dsP)
{
ds = dsP;
DataRow row = ds.Tables[0].NewRow();
ds.Tables[0].Rows.Add(row);

txtID.DataBindings.Add("Text",ds,ds.Tables[0].TableName+ "." + ds.Tables[0].Columns[0].ColumnName);
......
}
DataSet ds;
}
hugai780717 2005-04-18
  • 打赏
  • 举报
回复
晕,这样吧
我们通常放一个控件是
private 开头的

pulbic 开头就可以在from2中调用啦
cjol 2005-04-18
  • 打赏
  • 举报
回复
多谢lovvver(春晖) ,我想你的办法应该的可以的,

能不能解释一下f2.Owner = this;


//form2提交时:
Form2 f2 = new Form2();
f2 = (Form1)this.Owner;
f2.Refresh_Form1();


lovvver 2005-04-18
  • 打赏
  • 举报
回复
或者楼主把代码贴出来,我帮你改一下就可以了。
lovvver 2005-04-18
  • 打赏
  • 举报
回复
//form1中调用form2时:
Form2 f2=new Form2();
f2.Owner = this;
f2.Show();

//在form1中加一刷新方法:
public void Refresh_Form1()
{
...
}

//form2提交时:
Form2 f2 = new Form2();
f2 = (Form1)this.Owner;
f2.Refresh_Form1();

/*
另外:
form1里一定有取数据集的部分,刷新时重新取出数据集,然后再重新绑定数据即可。
如你form1中用listview显示数据,那么就需要重新绑定数据到listview。

*/

cjol 2005-04-18
  • 打赏
  • 举报
回复
谁能给一个标准点的回答吗???????

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧