DataGrid中绑定列问题

thinkner 2005-09-28 11:16:00
我在datagride中同时绑定了dropdownlist和HyperLink控件,想在HyperLink中得到dropdownList的ID值,为什么总获取不到啊 ,如何获取?
...全文
155 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
thinkner 2005-09-28
  • 打赏
  • 举报
回复
Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound
Dim btn As New System.Web.UI.WebControls.Button
Dim dsUserGroup As Bbs.DataAccess.BackGround.ManageForum.ManageUserPower = New Bbs.DataAccess.BackGround.ManageForum.ManageUserPower

If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
Dim EditID As Integer = CInt(e.Item.Cells(0).Text)
dlsGroup = CType(e.Item.Cells(1).FindControl("dslUserGroup"), System.web.UI.WebControls.DropDownList)
Dim dsGroup As DataSet = dsUserGroup.GetGroupListTop5()
Dim drw As DataRow = dsGroup.Tables(0).Rows(0)
dlsGroup.DataSource = dsGroup.Tables(0).DefaultView
dlsGroup.DataTextField = "GroupName"
dlsGroup.DataValueField = "GroupId"
dlsGroup.DataBind()

Dim hlk As System.Web.UI.WebControls.HyperLink
Dim groupid As Integer
groupid = CInt(dlsGroup.SelectedValue)
hlk = CType(e.Item.Cells(1).FindControl("hlk"), System.web.UI.WebControls.HyperLink)
hlk.NavigateUrl = "updBoardPower.aspx?eid=" & groupid
System.web.UI.WebControls.Button)

End If
End Sub

这程是这样的
thinkner 2005-09-28
  • 打赏
  • 举报
回复
to :LoveCherry:
是想当dropdownlist的selectindex改了以后把dropdownlist的值作为HyperLink的NavigateUrl的一个参数
LoveCherry 2005-09-28
  • 打赏
  • 举报
回复
想在HyperLink中得到 dropdownlist中的值
>>说说清楚啊,是想当dropdownlist的selectindex改了以后吧dropdownlist的值作为HyperLink的text还是url的一部分还是其他?
thinkner 2005-09-28
  • 打赏
  • 举报
回复
to:Zoujinyucn(不会游泳的鱼) ,zhangyu028(天哪,这么多人)
   是后台的程序 
   
我是在datagrid中确定了一个绑定列。在这一列下设置了dropdownlist和HyperLink控件两个控件,
想在HyperLink中得到 dropdownlist中的值
xiaojiao52 2005-09-28
  • 打赏
  • 举报
回复
如果你想在客户端找到这个控件:
datagrid 中绑定的DropDownList的值发送到客户端的值经过处理了,
比如:DataGrid的Id为DataGrid1,DropDownList的Id为ddl, 在第一行时生成的DropDownList的ID为:
DataGrid1_ctl1__ddl
你可以看源文件发现这些控件的ID号.

如果你想在服务器端找到这个控件:
先找到这一行的引用实例
DataGridItem dgi = (DataGridItem)DataGrid1.Item[行数];
dgi.FindControl("ddl");

或者在DataGrid的ItemBound事件中
if(e.Item.ItemType !=ListItemType.Header && e.Item.ItemType != ListItemType.Footer)
{
DropDownList ddl = (DropDownList)e.Item.FindControl("ddl");
}

豌豆干 2005-09-28
  • 打赏
  • 举报
回复
不太明白你的意思
Zoujinyucn 2005-09-28
  • 打赏
  • 举报
回复
后台还是前台获取?
豌豆干 2005-09-28
  • 打赏
  • 举报
回复
你刚刚对dlsGroup进行了DataBind(),就会对dlsGroup进行重置,哪里能取得出dlsGroup.SelectedValue

62,046

社区成员

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

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

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

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