我有我继承了一些代码,它不是世界上最伟大的,但它的工作原理,有一个小小的例外:放置在页面的不同区域相同的ASP.NET控件
此页是一个目录搜索,它具有由记录ID标识的控件,但是存在一个情况,即可能有多个具有相同记录标识的结果,从而导致.NET barf。我原本实施了一项检查,只是没有把控制权放在页面上,如果它已经在那里,但我们已经得到负面反馈。
我的问题是这样的:有没有办法将同一控件一次放在两个地方,例如,如果用户检查一个,相应的检查以及?我对.NET的行为并不十分熟悉,但如果需要,我会尽量提供更多的附加上下文。
编辑:下面是一个由遍历结果
Dim cbxSendInfo As CheckBox
Dim strCheckboxID As String = "cbxSendInfo-" & drOrganizer("ID") & "-" & i
Debug.text = Debug.text & " Loading Checkbox (" & strCheckboxID & ")...<br />"
cbxSendInfo = New CheckBox
cbxSendInfo.ID = strCheckboxID
cbxSendInfo.enableViewState = true
这里的数据表生成控件更新的代码就这么找到了控制,并建立联系人列表中的代码:
Dim strCheckboxID As String = "cbxSendInfo-" & drOrganizer("ID") & "-" & i
Dim cbxSendInfo As CheckBox = Me.tblResults.FindControl(strCheckboxID)
If cbxSendInfo.Checked Then
alOrganizers.Add(drOrganizer("ID"))
End If
在哪里drOrganizer(“ID”)是记录ID,而我是结果记录号。
我知道这是一个可怕的方式来做到这一点,至少从我的背景,但就像我说的,这是被破解的遗传代码。
您使用的是什么类型的数据绑定控件? – IrishChieftain 2010-02-04 21:41:12
我正在使用复选框控件。基本上说,我有一个结果集,可能包含“重复”结果,相同的记录ID,但地址数据不同。我比使用findcontrol来获取这些控件,看看他们是否被检查,并发送相关记录。 – 2010-02-04 21:50:46