使用vb.net收集带有复选框列表项的文本框文本
我正在使用vb.net构建一个任务管理系统。如何在每个复选框列表旁边设置一个文本框字段,这样当用户勾选复选框时,他也可以对此项目进行评论并提交整个完成的任务?下面是我的代码使用vb.net收集带有复选框列表项的文本框文本,vb.net,textbox,checkboxlist,Vb.net,Textbox,Checkboxlist,我正在使用vb.net构建一个任务管理系统。如何在每个复选框列表旁边设置一个文本框字段,这样当用户勾选复选框时,他也可以对此项目进行评论并提交整个完成的任务?下面是我的代码 Sub GetGroups() cblGroups.DataSource = Task.Components.Tasks.GetAllTasks cblGroups.DataTextField = "TaskName" cblGroups.DataValueField = "
Sub GetGroups()
cblGroups.DataSource = Task.Components.Tasks.GetAllTasks
cblGroups.DataTextField = "TaskName"
cblGroups.DataValueField = "ID"
cblGroups.DataBind()
End Sub
For Each item As ListItem In cblGroups.Items
If item.Selected Then
'reading each item value
End if
接下来,我认为您应该使用DataGridView。在那里,您可以有一个复选框列和一个文本框列,还有一个新行占位符来放置新任务。如果您不喜欢DataGridView,可以使用 您的另一个选择是维护一个复选框控件及其文本框对的列表,基本上执行数据网格的工作。一开始您还可以,但接下来可能需要滚动等操作,因此为什么不使用内置控件,在这里这些问题已经得到了即时解决。
'检查每个项目
'Check through each of the items
For Each item As ListItem In cblGroups.Items
'If this particular item is checked
If item.Selected = True Then
'Dynamically create a HTML Textbox
item.Text = [String].Format("{0}<input id=""TextBox{0}"" name=""TextBox{0}"" / >", item.Text)
Else
'Otherwise simply store the normal value
item.Text = [String].Format("{0}", item.Text)
End If
Next
将每个项目作为cblGroups.Items中的ListItem
'如果选中此特定项目
如果item.Selected=True,则
'动态创建HTML文本框
item.Text=[String]。格式(“{0}”,item.Text)
其他的
'否则只需存储正常值
item.Text=[String]。格式(“{0}”,item.Text)
如果结束
下一个
问题是什么?我已经更新了帖子,谢谢你:。Selected
和SelectedItems
与checkeeditems
不是一回事。如果您想处理选中的项目,请迭代CheckedItems
或checkedDices
集合。我更喜欢将其与我们的dridview一起使用,我们能否将文本框放在每个复选框项目旁边并读取文本的值?@Dan:您可以做任何事情-时间是唯一关心的问题。编写这个自制的数据网格超出范围,如果您有具体的实现问题,请询问具体的实现问题。您建议的内置控件是什么?@Dan:。尝试在ListItem的textfield中创建动态HTML TextBox