Как проверить значение в флажке после привязки данных - PullRequest
0 голосов
/ 08 ноября 2011

Я делаю привязку данных к флажку, поэтому я отображаю 6 значений в своем флажке, и пользователям дается 2 случайных значения при их создании. Как я могу проверить значения в флажке после того, как я сделаю привязку данных. Если значения 2 и 4 даны для пользователя, то флажок должен отображать от 1 до 6, что я делаю с использованием databind, и я должен проверить значения 2 и 4, как я могу это сделать

 while (reader.Read())
        {
            rolegiven.Add(reader["RoleName"].ToString());
        }
        reader.Close();
        if (rolegiven.Any(item => item.Equals("Value1")))
        {
            ckl_EditRole.SelectedIndex = 0;
        }else{}
        if (rolegiven.Any(item => item.Equals("Value2")))
        {
            ckl_EditRole.SelectedIndex = 1;
        }else{}
        if (rolegiven.Any(item => item.Equals("Value3")))
        {
            ckl_EditRole.SelectedIndex = 2;
        }else{}

Если выбраны значения 2 и 3 (из привязки данных я считаю, что значение 2 и значение 3 указаны для пользователя), проверяется только значение 3. Как я могу это сделать

1 Ответ

1 голос
/ 08 ноября 2011

Вы должны использовать Items коллекцию CheckBoxList control.

List<string> rolegiven = new List<string>()
    {
         "A","B","C","D","E","F"
    };
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            CheckBoxList1.DataSource = rolegiven;
            CheckBoxList1.DataBind();

            CheckBoxList1.Items[0].Selected = true;
            CheckBoxList1.Items[2].Selected = true;
            CheckBoxList1.Items[4].Selected = true;

            //or

            if(rolegiven.Any(item => item.Equals("A")))
              CheckBoxList1.Items[0].Selected = true;
            if(rolegiven.Any(item => item.Equals("D")))
              CheckBoxList1.Items[3].Selected = true;
            ...
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...