请高手请教一个DataGrid的问题!(高分)

bin_bin 2003-08-04 03:21:23
我把一个按扭放在了DataGrid的摸版列里,想要通过代码来控制按扭的显示。
代码如下:
aspx文件里:
<ItemTemplate>
<asp:Button id="BtnDelete" CommandName="DeleteComment" OnClick="DataGrid_DeleteRow" runat="server" Text="删除该评论"></asp:Button>
</ItemTemplate>
在后台代码里:
Public Sub DataGrid_ItemDataBound(ByVal sender As Object, ByVal e As DataGridItemEventArgs) Handles DgComment.ItemDataBound
If IsManageComment(Session("AuthorityURL"), Session("ArticleID")) Then
CType(e.Item.Cells(0).FindControl("BtnDelete"), Button).Visible = True
Else
CType(e.Item.Cells(0).FindControl("BtnDelete"), Button).Visible = False <-- 出错位置
End If
End Sub

出错提示:未将对象引用设置到对象的实例。
请高手指教!!
...全文
13 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zhoulichi 2003-08-04
我的方法是可以的!
回复
chnking 2003-08-04
每次绑定时都要判断Item是数据行(一般的行,交替行,编辑行
)才进行相关的操作,别的行(分页的行,头行等等是没有删除按钮的):

Public Sub DataGrid_ItemDataBound(ByVal sender As Object, ByVal e As DataGridItemEventArgs) Handles DgComment.ItemDataBound
If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.EditItem Then
If IsManageComment(Session("AuthorityURL"), Session("ArticleID")) Then
CType(e.Item.Cells(0).FindControl("BtnDelete"), Button).Visible = True
Else
CType(e.Item.Cells(0).FindControl("BtnDelete"), Button).Visible = False
End If
End If
End Sub
回复
bin_bin 2003-08-04
还是老样子,mybutton为nothing
看样子是没找到,但我确实有这个按扭的啊,在第一列,名字为BtnDelete
出错提示:未将对象引用设置到对象的实例。
回复
fly_miss 2003-08-04
dim mybutton as button

mybutton=CType(e.Item.Cells(0).FindControl("BtnDelete")

If IsManageComment(Session("AuthorityURL"), Session("ArticleID")) Then
mybutton.Visible = True
Else
mybutton.Visible = false
End If
End Sub
回复
fly_miss 2003-08-04
dim mybutton as button

mybutton= CType(e.Item.Cells(0).FindControl("BtnDelete"), Button)
If IsManageComment(Session("AuthorityURL"), Session("ArticleID")) Then
mybutton.Visible = True
Else
mybutton.Visible = False
End If
回复
bin_bin 2003-08-04
在第一列,应该是对的吧
回复
newchar 2003-08-04
引用
e.Item.Cells(0).FindControl("BtnDelete"),


按钮位置对不对?是在第几列?
回复
相关推荐
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2003-08-04 03:21
社区公告
暂无公告