修改 gridview 中控件属性问题

zoujp_xyz 2009-04-10 09:14:10

GridView中有代码:
<asp:TemplateField HeaderText="姓名">
<ItemTemplate>
<asp:HyperLink ID="hyLinkUserName" runat="server" NavigateUrl='<%# Eval("Type_id", "/default.aspx?ActionID=REPORT_Name_LIST&TYPE_ID={0}") %>'
Text='<%# Eval("UserName") %>'></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
下面我想在后台修改HyperLink (ID为 hyLinkUserName)的NavigateUrl属性 即再加上一个条件TYPE_NAME='zjp'

请问可以实现吗? 能的话在后台如何写?

...全文
159 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zoujp_xyz 2009-04-10
  • 打赏
  • 举报
回复

请问这样写对么?
<asp:HyperLink ID="hyLinkUserName" runat="server" NavigateUrl='<%# Eval("Type_id","Type_Name", "/default.aspx?ActionID=REPORT_Name_LIST&TYPE_ID={0}&TypeName={1}") %>'
Text='<%# Eval("UserName") %>'></asp:HyperLink>
maggie3256 2009-04-10
  • 打赏
  • 举报
回复
protected void exGv_RowDataBound(object sender, GridViewRowEventArgs e)
{

if (e.Row.RowType == DataControlRowType.DataRow)
{
HyperLink hk = (HyperLink)e.Rows.FindControl("hyLinkUserName");
hk.NavigateUrl = "";
}
}
灿烂阳光168 2009-04-10
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 yfqvip 的回复:]
能实现。
HyperLink hp = GridView1.Items[i].FindControls("hyLinkUserName") as HyperLink;
//意思是这个意思,就是利用FindControls找,GridView1.Items[i]不一定对哦
[/Quote]

说得好,可以实现。
yagebu1983 2009-04-10
  • 打赏
  • 举报
回复
可以动态创建列,并赋值。。。
Hikor 2009-04-10
  • 打赏
  • 举报
回复
if (e.Row.RowType == DataControlRowType.DataRow)
{
DataRowView rowView = (DataRowView)e.Row.DataItem;
HyperLink hyEdit = (HyperLink)e.Row.FindControl("hyEdit");
hyEdit.NavigateUrl = string.Format("SSTrainTicketAction.aspx?TTid={0}", rowView.Row["TTid"].ToString());
}
wangrumeng 2009-04-10
  • 打赏
  • 举报
回复
这样可以不:
<asp:TemplateField HeaderText="姓名">
<ItemTemplate>
<asp:HyperLink ID="hyLinkUserName" runat="server" NavigateUrl='default.aspx?ActionID=REPORT_Name_LIST&TYPE_ID=<%# Eval("数据源中的TYPE_ID字段") %>&TYPE_NAME=zjp'
Text='<%# Eval("UserName") %>'></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>


反正就那意思,不知道行不行哦
zoujp_xyz 2009-04-10
  • 打赏
  • 举报
回复
没有会的吗?
luoweiyang870601 2009-04-10
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zdhsnail 的回复:]
这些WEB控件是微软预定好的,你想加一个属性,就必须继承此控件,增加一个属性即可
[/Quote]
顶!!!
Roc_Lee 2009-04-10
  • 打赏
  • 举报
回复
[Quote=引用楼主 zoujp_xyz 的帖子:]
C# code
GridView中有代码:
<asp:TemplateField HeaderText="姓名">
<ItemTemplate>
<asp:HyperLink ID="hyLinkUserName" runat="server" NavigateUrl='<%# Eval("Type_id", "/default.aspx?ActionID=REPORT_Name_LIST&TYPE_ID={0}") %>'
Text='<%# Eval("UserName") %>'></asp:HyperLink>
</ItemTemplate>
</asp:TemplateFi…
[/Quote]
这个比较难,不过你可以在url中传值,然后获取进行你想要的工作
zoujp_xyz 2009-04-10
  • 打赏
  • 举报
回复
不转化为模板是不是在后台不能修改gridview的字段属性?
满衣兄 2009-04-10
  • 打赏
  • 举报
回复
能实现。
HyperLink hp = GridView1.Items[i].FindControls("hyLinkUserName") as HyperLink;
//意思是这个意思,就是利用FindControls找,GridView1.Items[i]不一定对哦
zoujp_xyz 2009-04-10
  • 打赏
  • 举报
回复
我是修改属性的值。不知道如何写?
奔跑的蜗牛007 2009-04-10
  • 打赏
  • 举报
回复
这些WEB控件是微软预定好的,你想加一个属性,就必须继承此控件,增加一个属性即可

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧