gpt4 book ai didi

c# - 如何将数据随机绑定(bind)到单选按钮列表 asp.net

转载 作者:太空宇宙 更新时间:2023-11-03 15:34:42 25 4
gpt4 key购买 nike

我正在构建一个表单。我需要显示我的问题,然后在 radiobuttonlist 中显示 3 个答案 [它们是同一个表中的列]。

我尝试将数据自动绑定(bind)到 Datalist

然后检查是否检查了正确的答案...如果不是我需要显示错误

<asp:DataList ID="DataList1t" runat="server" DataSourceID="AccessDataSource1" onitemdatabound="DataList1_ItemDataBound" onselectedindexchanged="DataList1t_SelectedIndexChanged1">
<ItemTemplate>
<table>
<tr>
<td>
<%# Eval("TheQus") %>
</td>
</tr>
<tr>
<td>
<asp:RadioButtonList runat="server" ID="RadioButtonList1">
</asp:RadioButtonList>
</td>
</tr>
</table>
<br />
<br />
</ItemTemplate>
</asp:DataList>
<asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/App_Data/Databasegeometreyeh.accdb" SelectCommand="SELECT TOP 4 Qus.ID, Qus.TheQus, Qus.CorrectAns, Qus.Ans2, Qus.Ans3 FROM EkhtbrNafsk INNER JOIN Qus ON EkhtbrNafsk.ID = Qus.Type WHERE Qus.Type= 1 order By rnd(Qus.ID)"></asp:AccessDataSource>

后面的代码是

protected void Page_Load(object sender, EventArgs e)
{
//DataList1t.Visible = false;

//DataTable QusTri = DAL.SelectFromTable("SELECT TOP 4 Qus.TheQus FROM EkhtbrNafsk INNER JOIN Qus ON EkhtbrNafsk.ID = Qus.Type WHERE Qus.Type=" + 1 + " order By rnd(Qus.ID)");
//DataList1t.DataSource = QusTri;
//DataList1t.DataBind();

//DataList1r.Visible = false;

//DataTable Qusrepoe = DAL.SelectFromTable("SELECT TOP 4 Qus.TheQus FROM EkhtbrNafsk INNER JOIN Qus ON EkhtbrNafsk.ID = Qus.Type WHERE Qus.Type= " + 2 + " order By rnd(Qus.ID)");
//DataList1r.DataSource = Qusrepoe;
//DataList1r.DataBind();


if (!IsPostBack)
{
DataTable t1 = DAL.SelectFromTable("select * from [EkhtbrNafsk]");
DropDownList1.DataTextField = "TypeTest";
DropDownList1.DataValueField = "ID";
DropDownList1.DataSource = t1;
DropDownList1.DataBind();
DataList1t.Visible = false;
DataList1r.Visible = false;
}
}
protected void Button2_Click(object sender, EventArgs e)
{

if (DropDownList1.SelectedValue == "1")
{
DataList1t.Visible = true;
}
else if (DropDownList1.SelectedValue == "2")
DataList1r.Visible = true;
}
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{

if (e.Item.ItemType == ListItemType.Item)
{
RadioButtonList RadioButtonList1 = (RadioButtonList)e.Item.FindControl("RadioButtonList1");

int QuestionID = Convert.ToInt32(DataBinder.Eval(e.Item.DataItem, "ID"));
DataTable dt = DAL.SelectFromTable("SELECT Qus.ID, Qus.CorrectAns, Qus.Ans2, Qus.Ans3 FROM EkhtbrNafsk INNER JOIN Qus ON EkhtbrNafsk.ID = Qus.Type WHERE Qus.ID=" + QuestionID);

RadioButtonList1.Items.Add(dt.Rows[0][0].ToString());
RadioButtonList1.Items.Add(dt.Rows[0][1].ToString());
RadioButtonList1.Items.Add(dt.Rows[0][2].ToString());//Bind the RadiobUttonList here


}
}

最佳答案

试试这个:

DataTable dt = DAL.SelectFromTable("SELECT Qus.ID, Qus.CorrectAns, Qus.Ans2, Qus.Ans3 FROM EkhtbrNafsk ORDER BY rand() INNER JOIN Qus ON EkhtbrNafsk.ID = Qus.Type  WHERE  Qus.ID=" + QuestionID );

关于c# - 如何将数据随机绑定(bind)到单选按钮列表 asp.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32208275/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com