【问题标题】:Using array to show order of the same RadioButtonList items randomly使用数组随机显示相同 RadioButtonList 项目的顺序
【发布时间】:2015-08-12 05:17:39
【问题描述】:

我使用数组随机生成 RadioButtonList 项目的顺序,但是当我选择一个单选按钮时,选择会被释放并生成另一个顺序

我正在尝试从我的数据库中的表中获取一个问题并在单选按钮列表中添加选项,并且我想更改每个用户的单选按钮的列表顺序。

我的代码:

RBList.ClearSelection();
    RBList.Items.Clear();
    string[] arr = new string[4]{
        ds.Tables["Quiz"].Rows[0][1].ToString(),
        ds.Tables["Quiz"].Rows[0][2].ToString(),
        ds.Tables["Quiz"].Rows[0][3].ToString(),
        ds.Tables["Quiz"].Rows[0][4].ToString()
    };
    System.Random rnd = new System.Random();
    arr = arr.OrderBy(x => rnd.Next()).ToArray();

    RBList.Items.Add(arr[0]);
    RBList.Items.Add(arr[1]);
    RBList.Items.Add(arr[2]);
    RBList.Items.Add(arr[3]);

    ques1.Text = (ds.Tables["Quiz"].Rows[0][0]).ToString();
    int p = Convert.ToInt32(q_no.Text);
    p += 0;
    q_no.Text = p.ToString();

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    也许您只需要检查页面是否是第一次呈现,然后随机化 RadioButtonList 项。像这样的,

    private void Page_Load()
    {
        if (!IsPostBack)
        {
            // your randomize code
        } else {
            // retrieve the selected item, but don't randomize the items again.
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多