请问为什么会这样?

summernightrain 2002-09-06 12:30:18
我在DataGrid中放了一个TemplateColumn,里面是一个DropDownList,然后我用代码访问这个DropDownList,下面是我在EditCommand中写的代码,我想在点编辑按钮的时候给这个DropDownList加入数据源,结果总是无法得到这个对象的正确引用。dt总是等于空。
<HTML代码>
<asp:TemplateColumn HeaderText="部门">
<EditItemTemplate>
<asp:DropDownList id="editDepart" runat="server" Width="173px"> </asp:DropDownList> </EditItemTemplate>
</asp:TemplateColumn>

Private Sub DataGrid1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles dgUsers.EditCommand

dgUsers.EditItemIndex = e.Item.ItemIndex
Dim dt As DropDownList = CType(e.Item.Cells(6).FindControl("editDepart"), DropDownList)
If dt Is Nothing Then
Label1.Text = "Edit:dt is null"
Else
dt.DataSource=....
dt.DataBind()
End If

End Sub
...全文
42 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
大健 2002-09-06
  • 打赏
  • 举报
回复
Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound

Dim i as Integer
Dim MyItem As System.Web.UI.WebControls.ListItem
'如果该列正被编辑,则
If DataGrid1.EditItemIndex = e.Item.ItemIndex Then
For i = 0 To 10
MyItem = New System.Web.UI.WebControls.ListItem()
MyItem.Text = i.ToString
MyItem.Value = i.ToString
CType(e.Item.Cells(3).FindControl("editDepart"),DropDownList).Items.Add(MyItem)
MyItem = Nothing
Next
End If

End Sub
icyer 2002-09-06
  • 打赏
  • 举报
回复
dgUsers.EditItemIndex = e.Item.ItemIndex
dgUsers.DataBind()
Dim dt As DropDownList = CType(dgUsers.Items(e.Item.ItemIndex).FindControl("editDepart"), DropDownList)

62,243

社区成员

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

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

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

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