【发布时间】:2016-10-17 03:25:29
【问题描述】:
我有一个问题,我搜索了很多但没有有效的答案 问题是:我动态创建了gridview,然后将动态创建的复选框添加到gridview并添加了它,但是当我试图获取复选框状态(选中或未选中)时,我无法到达复选框 请帮助我并感谢这个伟大的网站
Dim MessagesTable As DataTable = Recipient.CreateInboxMessagesTable(LoginName, WhatToShow)
Dim Tbl As New DataTable
Dim Col As DataColumn
Dim Row As DataRow
Col = New DataColumn("ID", GetType(String)) : Tbl.Columns.Add(Col)
Col = New DataColumn("Select", GetType(String)) : Tbl.Columns.Add(Col)
Col = New DataColumn("Sender", GetType(String)) : Tbl.Columns.Add(Col)
Col = New DataColumn("Subject", GetType(String)) : Tbl.Columns.Add(Col)
Col = New DataColumn("ReceiveDate", GetType(String)) : Tbl.Columns.Add(Col)
Col = New DataColumn("Privacy", GetType(String)) : Tbl.Columns.Add(Col)
Col = New DataColumn("ImportanceLevel", GetType(String)) : Tbl.Columns.Add(Col)
Col = New DataColumn("JustDate", GetType(String)) : Tbl.Columns.Add(Col)
Col = New DataColumn("LastReplyID", GetType(String)) : Tbl.Columns.Add(Col)
Col = New DataColumn("Status", GetType(Integer)) : Tbl.Columns.Add(Col)
Col = New DataColumn("From", GetType(String)) : Tbl.Columns.Add(Col)
For Each TRow As DataRow In MessagesTable.Rows
Row = Tbl.NewRow
Row("ID") = TRow.Item("ID_Rec")
'Row("Select") = New CheckBox
Row("Sender") = Member.GetUserName(TRow.Item("From_Msg"))
Row("Subject") = TRow.Item("Subject_Msg") & " =+-+= " & Message.HTMLToText(TRow.Item("Body_Msg"))
Row("ReceiveDate") = Recipient.Convert24TimeTo12(TRow.Item("ReceiveDate_Rec")).Substring(11)
Row("Privacy") = TRow.Item("Privacy_Msg")
Row("ImportanceLevel") = TRow.Item("ImportanceLevel_Msg")
Row("JustDate") = TRow.Item("ReceiveDate_Rec")
Row("LastReplyID") = TRow.Item("LastReplyID_Msg")
Row("Status") = TRow.Item("Status_Msg")
Row("From") = TRow.Item("From_Msg")
Tbl.Rows.Add(Row)
Next
aGrid.DataSource = Tbl
aGrid.DataBind()
这就是我如何创建我的网格视图和下面我添加复选框的代码
For Each GVRow As GridViewRow In aGrid.Rows
Dim CB As New CheckBox
GVRow.Cells(1).Controls.Add(CB)
Next
这就是我尝试获取复选框状态的方式,但没有成功
Protected Sub btnCompleted_Click(sender As Object, e As EventArgs) Handles btnCompleted.Click
For Each Row As GridViewRow In gvInbox.Rows
Dim cbSelect As CheckBox = DirectCast(Message.FindControlRecursive(Row, "CB"), CheckBox)
'If cbSelect.Checked = True Then
'End If
Next
End Sub
谢谢
【问题讨论】:
-
你有什么异常吗?
-
否,因为我跟踪代码并在无法获取复选框时停止它
标签: asp.net vb.net gridview checkbox