从 vb.net 中的 ID 字符串中查找单选按钮控件

Find Radiobutton Control from ID String in vb.net

我的 aspx 中有 3 个单选按钮:

<asp:RadioButton ID="rdoMasculin" 
     runat="server" AutoPostBack="true" 
     Checked="true" GroupName="gender" 
     TextAlign="Right" />

<asp:RadioButton ID="rdoFeminin" 
     runat="server" AutoPostBack="true" 
     GroupName="gender" />

<asp:RadioButton ID="rdoAnonymous" 
     runat="server" AutoPostBack="true" 
     GroupName="gender" />

发送表单时,我将选中的单选按钮的 ID 存储在会话变量中:

例如:Session("currentGender") = rdoZukuTermine.ID

当我稍后返回页面时,我在代码隐藏中使用以下代码:

Dim currentRadio = CType(FindControl(Session("currentGender")), RadioButton)
currentRadio.Checked = True
Session.Remove("currentGender")

currentRadio 最终成为空引用。但是当我检查会话时,它包含正确的 ID 作为字符串。 有人可以帮助我吗?

RadioButton 控件是直接在您的 .aspx 中还是有任何父控件?如果是,则像这样调用 Findcontrol() 直接父级:

Dim currentRadio = CType(ParentControl.FindControl(Session("currentGender")), RadioButton)