日期:2014-05-18  浏览次数:20679 次

如何在datagrid的ItemCreated里,给在datagrid里面的Label加超联接属性
如何在datagrid的ItemCreated里,给在datagrid里面的Label加超联接属性


实现根据表中的某一个标记,跳转到不同的页面的联接属性

------解决方案--------------------
1. 为什么要在ItemCreated的时候才加,完全可以在前台页面绑定的,用 <a> 标记 <HyperLink> <LinkButton> 都能实现
2. 如果在ItemCreate中,要FindControl找到这个Label
------解决方案--------------------
用模版列

<asp:TemplateColumn HeaderText= "id ">
<ItemTemplate>
<a href= ' <%# "Form " + DataBinder.Eval(Container.DataItem, "你的字段 ") + ".aspx?id= " + DataBinder.Eval(Container.DataItem, "id ") %> '> <%#DataBinder.Eval(Container.DataItem, "id ") %> </a>
</ItemTemplate>
</asp:TemplateColumn>
------解决方案--------------------
<asp:TemplateColumn HeaderText= "id ">
<ItemTemplate>
<a href= ' <%# "Form " + GetXXX(DataBinder.Eval(Container.DataItem, "你的字段 ")) + ".aspx "%> '> 随便写点什么 </a>
</ItemTemplate>
</asp:TemplateColumn>

然后在后台cs文件中写方法

protected string GetXXX(string s)
{
if (s == A)
return "A ";
if (s == B || s == C)
return "B "
return " "
}

------解决方案--------------------
添加Hyperlink不就行吗?为什么要用Label