如何创建带有提交问题的新radiobuttonlist?c#asp.net

如何创建带有提交问题的新radiobuttonlist?c#asp.net,c#,asp.net,C#,Asp.net,我有: 提交后如何创建带有新问题的radiobuttonlist新条目??im Princi创建新的2、3、4等。您应该将第三个条目放在: <div id="question"> <div style="float: left; width: 250px;"> <asp:Label ID="question" runat="server"></asp:Label></div> &

我有:



提交后如何创建带有新问题的radiobuttonlist新条目??im Princi创建新的2、3、4等。

您应该将第三个条目放在:

<div id="question">
        <div style="float: left; width: 250px;">
           <asp:Label ID="question" runat="server"></asp:Label></div>
        <div>
            <asp:RadioButtonList ID="selectdYesNo" runat="server" RepeatDirection="Horizontal">
                <asp:ListItem Text="Yes" Value="1"></asp:ListItem>
                <asp:ListItem Text="No" Value="0"></asp:ListItem>
            </asp:RadioButtonList>
        </div>
    </div>
    <div id="btCreate" style="margin-left: 200px; margin-top: 10px;">
        <asp:Button runat="server" Text="Categorize" ID="btCategorize" />
    </div>


因此,您的代码:

<%
  }

%>

更新 当你更新你的问题时,我的新答案是:

<asp:RadioButtonList ID="selectdYesNo" runat="server" RepeatDirection="Horizontal">
     <asp:ListItem Text="Yes" Value="1"></asp:ListItem>
     <asp:ListItem Text="No" Value="0"></asp:ListItem>
  <%
    if (needToShowThirdEntry) {     
  %>
     <asp:ListItem Text="Maybe" Value="2"></asp:ListItem>
  <%
   }        
  %>
</asp:RadioButtonList>


但是,由于这是一个单独的列表,您应该创建普通的单选按钮列表(不带if),并使用“代码隐藏”中的
newRBList.Visible
属性在第一次渲染时(回发之前)将其隐藏起来您可以像这样尝试
选择dyesno.Items.Add(new list item(“text”,“value”)

这是您的代码

<asp:RadioButtonList ID="selectdYesNo" runat="server" RepeatDirection="Horizontal">
            <asp:ListItem Text="Yes" Value="1"></asp:ListItem>
            <asp:ListItem Text="No" Value="0"></asp:ListItem>
</asp:RadioButtonList>


  <%
    if (needToShowSecondList) {     
  %>
<asp:RadioButtonList ID="newRBList" runat="server" RepeatDirection="Horizontal">
     <asp:ListItem Text="Yes" Value="1"></asp:ListItem>
     <asp:ListItem Text="No" Value="0"></asp:ListItem>
     <asp:ListItem Text="Maybe" Value="2"></asp:ListItem>
</asp:RadioButtonList>
  <%
   }        
  %>
这是你的ASP:HTML

 protected void Page_Load(object sender, EventArgs e)
{

    if (!IsPostBack)
    {
        PanelFirstQuestionBlock.Visible = true;
    }
}

protected void FirstQuestionGotAnswered(object sender, EventArgs e)
{
    PanelFirstQuestionBlock.Visible = false;
    PanelSecondQuestionBlock.Visible = true;
}  

我的第一个问题
对
不
我的第二个问题
对
不

如果某些条件(needToShowThirdEntry)为真,则会显示您的项目?或者简单地说,若用户提交了页面,不管怎样?我会避免内联编码,因为needToShowThirdEntry可能太复杂而无法内联编写。我建议保留代码文件中的所有逻辑。needToShowThirdEntry可以是代码文件中的属性/方法,这就是显示逻辑。您可以从此if访问代码中定义的页面类的(公共?)属性。这些项目可以像在其他答案中一样从代码中编辑,但我似乎在MVC中编程太久了,希望保持显示逻辑分离:)在视图中,您没有丑陋的面板、GridView和ListView,它们占用了大量的内容体,因此您可以使用内联更改。相反,我们有这些丑陋的书面控件,新手开发人员在每页上都会使用它们;为什么显示新项目时没有单选按钮?只有一个问题名?第一个问题的名称将与第二个新问题的名称相同。提交后将显示新项目,因为您通过编程方式在我的代码的第一行中添加了新项目,然后对其进行了数据索引,以便RadioButtonList可以开始使用它。所有旧项目将保持原样。如果您想重新订购项目,您应该重新绑定所有项目。提交后如何创建radiobuttonlist的新条目??这意味着什么?要创建新问题,我建议您在HTML中为每个问题创建RadioButtonList,然后只触发RadioButtonList.Visible=true/false;每次加载新问题时,请重新编写问题,因为你问错了。您想添加另一个RadioButtonList,而不是RadioButtonList中的另一项,这正是阅读您的问题时我们所想的。
 protected void Page_Load(object sender, EventArgs e)
{

    if (!IsPostBack)
    {
        PanelFirstQuestionBlock.Visible = true;
    }
}

protected void FirstQuestionGotAnswered(object sender, EventArgs e)
{
    PanelFirstQuestionBlock.Visible = false;
    PanelSecondQuestionBlock.Visible = true;
}  
<asp:Panel ID="PanelFirstQuestionBlock" runat="server" Visible="false">
        <h1>My first Question</h1>
        <asp:RadioButtonList ID="RadioButtonListAnswer1" runat="server" 
            OnSelectedIndexChanged="FirstQuestionGotAnswered">
            <asp:ListItem>yes</asp:ListItem>
            <asp:ListItem>no</asp:ListItem>
        </asp:RadioButtonList>
    </asp:Panel>

    <asp:Panel ID="PanelSecondQuestionBlock" runat="server" Visible="false">
    <h1>My second Question</h1>
        <asp:RadioButtonList ID="RadioButtonListAnswer2" runat="server">
            <asp:ListItem>yes</asp:ListItem>
            <asp:ListItem>no</asp:ListItem>
        </asp:RadioButtonList>
    </asp:Panel>