读书人

窗体相互调用的有关问题? 解决立刻给分

发布时间: 2012-03-09 21:42:54 作者: rapoo

窗体相互调用的问题? 解决立刻给分,急!!!
我Form1里有DataGridView1,button1,
Form2里textBox1及button2,

我现在点button1打开Form2,然后在textBox1里输入查询条件,点button2时DataGridView1能按我的查询条件显示数据,但总不能成功,求救!

我写法如下:
Form1 button1 click事件下:
Form2 F2=new Form2(this);
F2.ShowDialog();

Form2中
Form2 _F1;
public Form2(Form1 F1)
{
InitializeComponent();
_F1 = F1;
}

button2 click事件
_F1.DataGirdView1.DataSource=ds.Table[ "XX "];

请指教, 解决立刻给分.



[解决办法]
Form2 frm Form1;
public Form2(Form1 F1)
{
InitializeComponent();
frm= F1;
}

[解决办法]
如果是我,我的做法是点击Button2的时候From2关闭,将From2中的条件传回From1,在From1中进行操作.
[解决办法]

http://blog.csdn.net/tjvictor/archive/2006/06/23/824617.aspx
[解决办法]
Form1 frm Form1;
public Form2(Form1 F1)
{
InitializeComponent();
frm= F1;
}

[解决办法]
这个应该简单一点 自己琢磨琢磨

tjvictor(终于升星了,向两星奋斗)

http://blog.csdn.net/tjvictor/archive/2006/06/23/824617.aspx



[解决办法]
namespace WindowsApplication2
{
partial class Form2
{
/// <summary>
/// 工具所需的。
/// </summary>
private System.ComponentModel.IContainer components = null;

/// <summary>
/// 清除任何使用中的源。
/// </summary>
/// <param name= "disposing "> 如果公 Managed 源 true,否 false。 </param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}

#region Windows Form 工具生的程式

/// <summary>
/// 此工具支援所需的方法 - 勿使用程式器修改方法的容。
///
/// </summary>
private void InitializeComponent(Form1 frm)
{
Form1 f;
f = frm;
this.components = new System.ComponentModel.Container();
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Text = "Form2 ";
}

#endregion
}
}
[解决办法]
这样改一下看看:
Form1 button1 click事件下:
Form2 f=new Form2(this);


if (f.ShowDialog()==DialogResult.OK)
{
DataGirdView1.DataSource=ds.Table[f.TableName];
}

Form2中
private string tableName;
public Form2()
{
InitializeComponent();
}
添加一个属性:
public string TableName
{
get
{
return this.tableName;
}
}
button2 click事件
this.tableName=this.textBox1.Text;

读书人网 >C#

热点推荐