ASP.net中怎么样将WebForm1中的一个值传送到WebForm2中??“分不够再开贴”
菜鸟求教:
WebForm1中DataGrid有一个编辑列,点编辑列连接到WebForm2,并将编辑所在行的主键值传送到WebForm2中,应该怎么实现!
下面是DataGrid中编辑连接的代码:
<asp:TemplateColumn HeaderText="业务号">
<ItemTemplate>
<asp:hyperlink ID="aa" Runat="server" NavigateUrl='WebForm3.aspx?riqi=<%# databinder.eval(container.dataitem,"日期").Tostring() %>' Target="mainFrame">编辑</asp:hyperlink>
</ItemTemplate>
</asp:TemplateColumn>
问题点数:100、回复次数:17Top
1 楼lj74521(error)回复于 2003-12-02 07:49:40 得分 0
能给段代码或实例就好!
dfg028@dfg.com.cn
谢谢了!Top
2 楼saucer(思归)回复于 2003-12-02 07:51:03 得分 20
在服务器端传还是在客户端直接传?最后显示的是哪页?
Passing Values between ASP.NET Web Forms
http://www.dotnetbips.com/displayarticle.aspx?id=79Top
3 楼lj74521(error)回复于 2003-12-02 08:01:12 得分 0
都可以,只要能传到WebForm2中就可以了!
我想在WebForm2中完成“显示”“修改”“删除”被个选择的记录。最后显示WebForm1。
最好是可以用VB写!不知道可不可以啊!急~~~~~~~Top
4 楼lj74521(error)回复于 2003-12-02 08:02:23 得分 0
还有,我用的是DataGrid的模板列!Top
5 楼winte(winter)回复于 2003-12-02 08:05:51 得分 15
<asp:DataGrid runat="server" id="MyGrid"
AllowPaging="True"
PageSize="10"
OnPageIndexChanged="ChangePage"
PagerStyle-HorizontalAlign="Right"
PagerStyle-NextPageText="下一页"
PagerStyle-PrevPageText="上一页"
HeaderStyle-BackColor="#AAAADD"
AlternatingItemStyle-BackColor="#FFFFC0"
BorderColor="Black"
CellPadding="2"
CellSpacing="0"
AutoGenerateColumns="false" >
<Columns>
<asp:HyperLinkColumn DataTextField="学号"
HeaderText="学号"
DataNavigateUrlField="学号"
DataNavigateUrlFormatString="students.aspx?id={0}"
Target="_blank" />
<asp:BoundColumn DataField="姓名" HeaderText="姓名" />
<asp:BoundColumn DataField="语文" HeaderText="国语"
ItemStyle-HorizontalAlign="right"/>
<asp:BoundColumn DataField="英文" HeaderText="英语"
ItemStyle-HorizontalAlign="right"/>
<asp:BoundColumn DataField="数学" HeaderText="数学"
ItemStyle-HorizontalAlign="right"/>
</Columns>
</asp:DataGrid>
DataNavigateUrlFormatString="students.aspx?id={0}"是你要传递给页
DataNavigateUrlField="学号"是要传递的值会代替上面的{0}的位置
-----------------------你也可以用模版列来传递多个参数?Top
6 楼winte(winter)回复于 2003-12-02 08:08:17 得分 10
<ASP:DataGrid id="MyDataGrid" runat="server">
<Columns>
<asp:HyperLinkColumn
DataNavigateUrlField="au_id"
DataNavigateUrlFormatString="datagrid13_details.aspx?id={0}"
Text="Get Details"
/>
</Columns>
</ASP:DataGrid>
Top
7 楼lj74521(error)回复于 2003-12-02 08:10:16 得分 0
那WebForm2怎么接收传进来的数据呢?这个是关键啊,谢谢各位了!Top
8 楼ALong_Yue()回复于 2003-12-02 08:13:10 得分 10
Request.QueryString("Id")Top
9 楼mcwj(爱无涯)回复于 2003-12-02 08:13:15 得分 0
<asp:hyperlink ID="aa" Runat="server" NavigateUrl='WebForm3.aspx?id=<%# databinder.eval(container.dataitem,"id").Tostring() %>' Target="mainFrame">编辑</asp:hyperlink>
form2中
request("id")
Top
10 楼studylnu(学习中)回复于 2003-12-02 08:25:57 得分 5
将WebForm1中的主键值保存在session中Top
11 楼winte(winter)回复于 2003-12-02 08:28:39 得分 5
用request("id")就可以了你可以用<%= request("id")%>试一下传递过来的值Top
12 楼Wuzhou98(还在学习...)回复于 2003-12-02 08:48:38 得分 15
把你的显示、编辑、删除换成LinkButton,并为按钮的CommandName分别设置为:View、Edit、Dele,然后在ItemCommand事件中写代码。
<asp:ButtonColumn Text="查看" HeaderText="查看" CommandName="View"></asp:ButtonColumn>
<asp:ButtonColumn Text="编辑" HeaderText="编辑" CommandName="Edit"></asp:ButtonColumn>
<asp:ButtonColumn Text="删除" HeaderText="删除" CommandName="Dele"></asp:ButtonColumn>
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
string val1=e.Item.Cells[3].Text.Trim();
string Val2=e.Item.Cells[4].Text.Trim();
string val3=e.Item.Cells[5].Text.Trim();
string Val4=e.Item.Cells[6].Text.Trim();
...
switch(e.CommandName)
{
case "View":
Response.Redirect("test.aspx?act=view&val1="+val1+"&val2="+val2+"&val3="+val3);
break;
case "Edit":
Response.Redirect("test.aspx?act=edit&val1="+val1+"&val2="+val2+"&val3="+val3);
break;
case "Dele":
Response.Redirect("test.aspx?act=dele&val1="+val1+"&val2="+val2+"&val3="+val3);
break;
}
}
Top
13 楼liuzhonghe(呆头鹅)回复于 2003-12-02 09:13:00 得分 10
两种方法:服务器端用Session传值如: Session["DataKey"]=当前编辑列的主键
webForm2 用object ob=Session["DataKey"];接收
客户端用传递参数形式:如 winte(winter)得代码
在webForm2 用string strId=Request.QueryString["id"];接收Top
14 楼standy(天下无双)回复于 2003-12-02 09:24:12 得分 0
session挺好Top
15 楼winte(winter)回复于 2003-12-02 09:33:53 得分 0
session太多会不会影响网页的效率Top
16 楼jpyc(九品-沉默)回复于 2003-12-02 09:35:59 得分 10
http://expert.csdn.net/Expert/topic/2503/2503219.xml?temp=.9078943
打开帖子内容的方法就是你所要的吧?Top
17 楼gabriel1(说自己的话,让别人走路去吧)回复于 2003-12-02 09:42:01 得分 0
可以用session去实现,session的元素可以是数组Top




