C# If-Else语句不工作ASP.NET

C# If-Else语句不工作ASP.NET,c#,asp.net,if-statement,radio-button,C#,Asp.net,If Statement,Radio Button,Index.aspx <asp:RadioButton ID="rbt1" runat="server" Text="By Customer" GroupName="summary" OnCheckedChanged="enabled_CheckedChanged" Checked="True"/> <asp:RadioButton ID="rbt4" runat="server" Text="With Target" OnCheckedChanged="enabled_C

Index.aspx

 <asp:RadioButton ID="rbt1" runat="server" Text="By Customer" GroupName="summary" OnCheckedChanged="enabled_CheckedChanged" Checked="True"/>
 <asp:RadioButton ID="rbt4" runat="server" Text="With Target" OnCheckedChanged="enabled_CheckedChanged" GroupName="summary"/>

代码的目的是在检查rbt1时,将检查rbt4。用户也可以在检查rbt1之后再检查rbt4。但是,如果选中了rbt4,则会自动选中rbt1。使用了上面的代码,但似乎不起作用。我是否遗漏了什么,或者编码有错误?请给我一些建议。提前感谢。

您使用的是单选按钮,希望选择多个,但单选按钮与相同的
组名互斥。同一组中不能选择多个单选按钮。您可能需要使用来选择多个,或者为例外情况指定不同的组名,这可能会解决问题,或者您可能需要将复选框与单选按钮或嵌套的html复选框相结合

使用GroupName属性指定要添加的单选按钮的分组 创建一组相互排斥的控件。您可以使用组名 属性,当从可用列表中只能选择一个选项时 选项。当设置此属性时,菜单中只有一个单选按钮 一次可以选择指定的组


如果您想在复选框中建立一些关系,例如如果选择了一个复选框,则应选择另一个复选框,仅此而已,然后您可以使用客户端脚本来保存不必要的回发并平滑用户体验

两个单选按钮具有相同的
GroupName
。一次只能检查其中一个。更改单选按钮的
GroupName
属性以修复错误。为了清楚起见,请参阅此。还可以将'AutoPostBack=“true”属性添加到单选按钮代码中。

请参阅此编码说明:AutoPostBack=“true”。删除两个单选按钮的相同组名

<asp:RadioButton ID="RadioButton1" runat="server" OnCheckedChanged="RadioButton1_CheckedChanged" AutoPostBack="true" />

protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
        {
            RadioButton2.Checked = true;
        }

受保护的无效RadioButton1_CheckedChanged(对象发送方,事件参数e)
{
RadioButton2.选中=真;
}

请在html代码中添加:
AutoPostBack=“true”

<asp:RadioButton ID="rbt1" runat="server" AutoPostBack="true" Text="By Customer"GroupName="summary" OnCheckedChanged="enabled_CheckedChanged" Checked="True" />

<asp:RadioButton ID="rbt4" runat="server" AutoPostBack="true" Text="With Target" OnCheckedChanged="enabled_CheckedChanged" GroupName="summary" />


作为旁注:
rbt1.Checked=rbt4.Checked
如果没有if语句,则可以替换代码。我想问题出在别的地方。我不清楚你的要求,因为你的解释似乎前后矛盾。哪个复选框绑定到另一个复选框?rbt1是绑定的还是rbt4。您的代码表明rbt1将绑定到rbt4,但您的解释表明在某些部分存在其他情况。此外,您能否准确地告诉我们什么不起作用?页面加载时它不工作还是用户(您)手动选中复选框后它不工作?“用户也可以在选中rbt 1后选中rbt 4。”您将
rtb4
rtb1
连接到同一事件:
已启用\u已选中已更改
。因此,如果未选中
rtb4
,则无法将
rtb1
设置为true@CanIbanoglurbt1将绑定到RBT4。实际上,用户可以选择许多单选按钮。我使用了GroupName属性,这样就不会有多个选择。然而,rbt4是rbt1的一种扩展。那么,使用复选框是否能够满足我的要求?将不同的组名指定给异常可能会解决问题。请您解释将不同的组名指定给异常的含义好吗?我不明白这意味着什么,除了可以同时选择的单选按钮应该有不同的组名,如rbt4和rbt1应该有不同的组名,以便同时选择这两个。是否需要autopostback=“true”?表单中还有其他部分供用户选择选项。否则它将不起作用。您需要添加此属性。
<asp:RadioButton ID="rbt1" runat="server" AutoPostBack="true" Text="By Customer"GroupName="summary" OnCheckedChanged="enabled_CheckedChanged" Checked="True" />

<asp:RadioButton ID="rbt4" runat="server" AutoPostBack="true" Text="With Target" OnCheckedChanged="enabled_CheckedChanged" GroupName="summary" />