窗体跳转传参数(页面跳转参数传递)
vb.net怎么用构造函数传参进行窗体间跳转?
Public?Class?Form2
????Dim?test?As?String
????Public?Sub?New(ByVal?_test?As?String)
????????test?=?_test
????End?Sub
End?Class
Form1 中 New Form2("abc") 即可传参给 Form2 中的 test。
但在 VB.NET 中,没必要这么麻烦,只需要声明为 Public,即可直接方法,如:
Public?Class?Form2
????Public?test?As?String
End?Class
Form1 中直接 Form2.test = "abc" 即可。
C#中winForm如何实现窗体间跳转值的传递?
C#中实现窗体间传值
1、VS
2005的Visual
C#
Windows应用程序和Visual
C#智能设备Pocket
PC
2003设备应用程序。假设我们需要点击主窗体FMMain中的某一个按钮时打开子窗体FMChild并将某一个值传给子窗体FMChild,一般情况下,我们点击按钮显示子窗体FMChild的代码为:
FMChild
fmChild
=
new
FMChild();
fmChild.ShowDialog();
fmChild.Dispose();
如果我们需要将主窗体FMMain中的string
strValueA的值传给FMChild,那么我们首先对strValueA进行如下处理:
private
string
strValueA;
public
string
StrValueA
{
get
{
return
strValueA;
}
set
{
strValueA
=
value;
}
}
使其成为主窗体FMMain的一个属性,接着修改显示子窗体的代码为以下两种的其中一种。方法一:
FMChild
fmChild
=
new
FMChild();
fmChild.ShowDialog(this);
fmChild.Dispose();
方法二:
FMChild
fmChild
=
new
FMChild();
FMChild.Owner
=
this;
fmChild.ShowDialog();
fmChild.Dispose();
然后在修改子窗体FMChild中申明一个主窗体FMMain对象,
FMMain
fmMain;
在需要使用主窗体FMMain的string
strValueA的地方加上如下代码:
fmMain
=
(FMMain)this.Owner;
这样,就可以获得主窗体FMMain中strValueA的值了。这时,如果你需要将子窗体FMChild中的string
strValueB传给主窗体FMMain,同样处理string
strValueB。
private
string
strValueB;
public
string
StrValueB
{
get
{
return
strValueB;
}
set
{
strValueB
=
value;
}
}
那么你在关闭子窗体代码fmChild.Dispose();后,可以写一些代码来保存或者处理FMChild的strValueB,例如:
string
strTmp
=
fmChild.StrValueB;
注意,在Visual
C#智能设备Pocket
PC
2003设备应用程序中显示子窗体FMChild只能使用:
FMChild
fmChild
=
new
FMChild();
FMChild.Owner
=
this;
fmChild.ShowDialog();
fmChild.Dispose();
在Visual
C#智能设备Pocket
PC
2003的设备应用程序中ShowDialog()没有重载。参考资料:
C#中从一个窗体到另一个窗体时,参数该如何传递呢?
用代码说明比较容易,具体如下:
public
partial
class
form1
:
form
{
public
form1()
{
initializecomponent();
}
//
跳转
public
void
redirect()
{
form2
form
=
new
form2(this);
//
通过this传递当前窗体到下一个窗体
form.show();
}
}
public
partial
class
form2
:
form
{
private
form1
_form
=
null;
public
form2(
form1
form)
{
//
保存前一个窗体
_form
=
form;
initializecomponent();
}
}
从登陆界面跳转到主窗口的时候,怎么样把参数传过来啊,大神求教
比如主页面是Index.aspx,而你要传的参数是用户名框txtUserName,只需要在跳转的时候写Response.Redirect("Index.aspx?userName='+txtUserName.Text+' ")。然后在index.aspx后台request["userName"].tostring()就好了。
还有就是用session传递,在login.aspx后台写session["userName"]=txtUserName.Text.tostring().trim();
这样的话所有的页面都能用这个session["userName"]了,要使用的时候只要在这个页面后台写string userName = (string)session["userName"];