CS模式中如何进行传值 如题,我想实现一个查询,就是我在第一个FORM1的TEXTBOX1那里填入了一个学号,然后我想通过一个按钮BUTTON1,单击后在FORM2那里有一个DATAGRIDVIEW1显示出这个学号的学生资料,请问各位应该如何解决???? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 //Form1,设学号是字符型,整型也一样public string stuNo = string.Empty; //传递学号,也可使用静态变量protected void button1_Click(object sender,EventArgs e){ if(TextBox1.Text.Length > 0) { stuNo = TextBox1.Text; Form2 f = new Form2(); f.Owner = this; f.Show(); //this.Close(); }}//Form2private string searchStuNo;protected Form_Load(object sender,EventArgs e){ Form1 f = this.Owner as Form1; if(f != null) { searchStuNo = f.stuNo;子 //传递的学号 //code }} 在form2里面定义个属性,点击button时,把textbox的值赋过去就行了 也可以用构造函数传值,学号传过去就根据学号查出数据绑定DataGrid 楼主可以通过点击From1中的button按钮,把输入在textbox中的值传递到From2中,在From2中连接数据库把数据显示在greedView中,关于两个窗体间传值问题:在实际开发应用中,常常需要在窗体间传递参数。常用的几种参数传递方法有如下几种: 以下内容来自网上。1。使用openargs 在调用的窗体使用如下语句: docmd.openform "被调用的窗体", , , , , , "参数值" 在被调用的窗体使用me.openargs即可获取传递过来的参数 2。使用全局变量 先设置一个全局变量,例如:gstrPara, Public gstrPara as string 在调用之前传递参数值给这个全局变量 gstrPara="参数值" docmd.openform "被调用的窗体" 在被调用的窗体里使用gstrPara即可获取传递过来的参数 3。使用tag标记 将要传递的参数放置在调用窗体的tag标记里在被调用的窗体里通过调用 forms("调用的窗体").tag 来获取参数值 4。使用模块变量 在调用窗体设置一个公共的模块变量 mstrPara 将要传递的参数放置在调用窗体的mstrPara变量里 在被调用的窗体里通过调用 forms("调用的窗体").mstrPara 来获取参数值 5。直接获取 如果参数来自调用窗体的控件,也可直接调用 在被调用的窗体里直接引用调用窗体的控件的值 如:forms("调用的窗体").控件名.value 6。多个参数传递 如果需要传递多个参数,可将参数合并到一个变量里传送(使用指定符号隔开),然后在被调用窗体再拆分这些变量,以达到多个参数传递的效果。 不过,因为一般传递两个参数的时候,多数一个是变量,一个是窗体本身,所以我常用的方法也是比较实用的方法是: 在调用窗体使用如下语句: docmd.openform "被调用的窗体", , , , , , "参数值" 而在被调用的窗体里设置一个模块变量 mfrmSrc 在被调用的窗体的open或load事件中设置 set mfrmSrc= screen.activeform 这时mfrmSrc就指向原来的调用窗体(因为在窗体未完全加载好前,屏幕上激活的窗体是原来的窗体) 使用mfrmSrc你可以获取调用窗体上所有控件及相关的值,并且不需要事先知道原来窗体的名称,具有比较强的通用性。 各位哥哥姐姐 小弟困惑的问题 ASP.NET读取Cookies显示乱码??? 自动增长的int型中的 是(不用于复制) 是什么意思 asp调试问题 我用了aspnetpager url分页,panel显示不显示出问题了 有办法实现吗? 如何在asp.net中获得随机数 急!怎样在textbox中实现从右往左写 告急求助:ASP.NET 树形结构实现(vb.net更好啦) 如何将日志文件写入SQL 简单使用 document.createElement 和 new Option 创建一个列表框时碰到的灵异事件,胆小者慎入!!! 跳转后刷新原来的页面?
//Form1,设学号是字符型,整型也一样
public string stuNo = string.Empty; //传递学号,也可使用静态变量protected void button1_Click(object sender,EventArgs e)
{
if(TextBox1.Text.Length > 0)
{
stuNo = TextBox1.Text;
Form2 f = new Form2();
f.Owner = this;
f.Show();
//this.Close();
}
}//Form2
private string searchStuNo;
protected Form_Load(object sender,EventArgs e)
{
Form1 f = this.Owner as Form1;
if(f != null)
{
searchStuNo = f.stuNo;子 //传递的学号
//code
}
}
学号传过去就根据学号查出数据绑定DataGrid
在实际开发应用中,常常需要在窗体间传递参数。常用的几种参数传递方法有如下几种: 以下内容来自网上。
1。使用openargs
在调用的窗体使用如下语句:
docmd.openform "被调用的窗体", , , , , , "参数值"
在被调用的窗体使用me.openargs即可获取传递过来的参数
2。使用全局变量
先设置一个全局变量,例如:gstrPara,
Public gstrPara as string
在调用之前传递参数值给这个全局变量
gstrPara="参数值"
docmd.openform "被调用的窗体"
在被调用的窗体里使用gstrPara即可获取传递过来的参数
3。使用tag标记
将要传递的参数放置在调用窗体的tag标记里
在被调用的窗体里通过调用 forms("调用的窗体").tag 来获取参数值
4。使用模块变量
在调用窗体设置一个公共的模块变量 mstrPara
将要传递的参数放置在调用窗体的mstrPara变量里
在被调用的窗体里通过调用 forms("调用的窗体").mstrPara 来获取参数值
5。直接获取
如果参数来自调用窗体的控件,也可直接调用
在被调用的窗体里直接引用调用窗体的控件的值 如:forms("调用的窗体").控件名.value
6。多个参数传递
如果需要传递多个参数,可将参数合并到一个变量里传送(使用指定符号隔开),然后在被调用窗体再拆分这些变量,以达到多个参数传递的效果。
不过,因为一般传递两个参数的时候,多数一个是变量,一个是窗体本身,
所以我常用的方法也是比较实用的方法是:
在调用窗体使用如下语句:
docmd.openform "被调用的窗体", , , , , , "参数值"
而在被调用的窗体里设置一个模块变量 mfrmSrc
在被调用的窗体的open或load事件中设置
set mfrmSrc= screen.activeform
这时mfrmSrc就指向原来的调用窗体(因为在窗体未完全加载好前,屏幕上激活的窗体是原来的窗体)
使用mfrmSrc你可以获取调用窗体上所有控件及相关的值,并且不需要事先知道原来窗体的名称,具有比较强的通用性。