简体   繁体   中英

Output RadioButtonList from C# to ListView

I am trying to fill a RadioButtonList from database and output it in a ListView :

What I have tried:

ASP:

<ItemTemplate>
    <asp:RadioButtonList runat="server" DataSource=<%#Eval("respostas")%>></asp:RadioButtonList>
</ItemTemplate>

C#:

DataRow dr = dt.NewRow();
dr["nome_pergunta"] = reader["pergunta"];

DataTable respostas = new DataTable();
respostas.Columns.Add("respostaA", typeof(string));
respostas.Columns.Add("respostaB", typeof(string));
respostas.Columns.Add("respostaC", typeof(string));
respostas.Columns.Add("respostaD", typeof(string));
DataRow linha = respostas.NewRow();
linha["respostaA"] = reader["respostaA"].ToString();
linha["respostaB"] = reader["respostaB"].ToString();
respostas.Rows.Add(linha);


dr["respostas"] = respostas;

dt.Rows.Add(dr);

I also tried: ASP:

<ItemTemplate>
    <%#Eval("respostas")%>
</ItemTemplate>

C#:

RadioButtonList respostas = new RadioButtonList();
respostas.ID = "respostas_" + numero_respota;
respostas.Items.Add(new ListItem(reader["respostaA"].ToString(), "a"));
respostas.Items.Add(new ListItem(reader["respostaB"].ToString(), "b"));
respostas.Items.Add(new ListItem(reader["respostaC"].ToString(), "c"));
respostas.Items.Add(new ListItem(reader["respostaD"].ToString(), "d"));

None of them worked, any suggestions?

After some tests here is the solution:

ASP:

<ItemTemplate>
    <asp:RadioButtonList runat="server" DataSource=<%#Eval("respostas")%>></asp:RadioButtonList>
</ItemTemplate>

In C#:

List<string> l = new List<string>();
l.Add(reader["respostaA"].ToString());
l.Add(reader["respostaB"].ToString());

dr["respostas"] = l;

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM