在属性生成器里面,增加一个链接列,
URL字段为标志位,URL格式字符串为NewPage.aspx?sFlag={0}把新增和查看做到一个页面!
页面的Page_load事件里面得到传递的参数 Request["sFlag"].ToString()
然后决定页面是何种形式
URL字段为标志位,URL格式字符串为NewPage.aspx?sFlag={0}把新增和查看做到一个页面!
页面的Page_load事件里面得到传递的参数 Request["sFlag"].ToString()
然后决定页面是何种形式
解决方案 »
- asp.net DAL层中查询结果不能返回数值
- 怎么绑定站点地图
- 用C#写的A.DLL通过命令regsvcs A.dll手动注册成功,现在要随安装包一起在客户机上安装,如果用C#实现这一注册功能?
- ajax判断用户名存在怎么禁止提交
- 救急!!!!!!!!关于excel的 ,比较有难度
- 关于网页传值的参数问题,高手进,求知识
- 【在线等解决】asp.net开发WEB SITE,如何处理外部引用的DLL
- 想弄一个互相发消息的那种怎么搞呀~~急死人了~~
- 有没有办法通过编程替换这种情况?
- 那位大哥有网上签名的方案,急需,50分
- DropDownList怎样根据从数据库中取出的值来改变默认值?
- 将LinkButton.ForeColor设置了另外一种颜色,怎样恢复原来的默认颜色?
数据集里自己CASE 1 "NewPage.aspx" ELSE "EditPage.aspx" END AS 一个字段 LINKS ,然后绑定。
<ItemTemplate>
<asp:HyperLink id="HyperLink1" runat="server" NavigateUrl='<%# GetUrl(DataBinder.Eval(Container.DataItem, "Flag").ToString()) %>'></asp:HyperLink>
</ItemTemplate>aspx.cs
public string GetUrl(string flag)
{
if (flag == "true")
return "View.aspx";
else
return "New.aspx";
}
在DataGrid中加入一个模板列,模板列中有一个HyperLink (ID = “OperationLink”)
代码如下:
<asp:TemplateColumn HeaderText="" FooterText="">
<ItemTemplate>
<asp:HyperLink id="OperationLink" runat="server">查看</asp:HyperLink>
</ItemTemplate>
</asp:TemplateColumn>
後台代碼
根据标志位的值动态改变 HyperLink 的属性。这里假定你的标志列是DataGrid的第一列。for(int i=0; i<DataGrid1.Items.Count;i++)
{
HyperLink TempLink = (HyperLink)DataGrid1.Items[i].FindControl("OperationLink");
if(DataGrid1.Items[i].Cells[0].Text = "true")
{
TempLink.Text = "查看";
TempLink.NavigateUrl = "你的查看连接";
}
else
{
if(DataGrid1.Items[i].Cells[0].Text = "1")
{
TempLink.Text = "新建";
TempLink.NavigateUrl = "你的新建连接";
}
}
}
url 字段id
url格式化字符串tzshow.aspx?id={0}&lookup=true
可是我还需要把cbflag(绑定列)的值也传过去,根据id和cbflag和lookup的值来进行不同的操作
<ItemTemplate>
<%if flag="是" then%>
<a href=#>查看页面</a>
<%else%>
<a href=#>新建页面</a>
<%end if%>
</ItemTemplate>
</asp:TemplateColumn>
flag 是标志位
查看的时候,根据datagrid超级链接列传过来的参数读取
新建的时候也根据datagrid传来的参数判断,然后转向新建页面,同样也可以传参