将每列分配给相应的复选框

时间:2015-11-19 16:40:38

标签: c# visual-studio-2012 checkbox sqlite

我有33个复选框,这是一个有自己座位号的公交车座位,我的bus_seats表中也有33列。在我的表单和数据库中,一切都已设置完毕。但我坚持将值从sql分配给复选框。我可以手动设置

{{1}}

正如您在代码中看到的那样,读者[" 5"]是我在sql表中的第五个席位,而checkBox5是我表格中的第五个席位。我不想手动分配它们并创建巨大的" if"声明。有没有简单的方法来比较列值和复选框值?在我的代码中读者[" 5"] == 1 表示女性(粉红色)占用第5席位,2表示男子占用(蓝色),0表示空(灰色)。我试图通过他们的sql值

着色复选框背景颜色

1 个答案:

答案 0 :(得分:1)

如果您的文本框位于容器中,则使用该容器ID,否则使用表单ID。

string sql = "SELECT * FROM bus_seats WHERE sefer_id = 1";
using (SQLiteCommand command = new SQLiteCommand(sql, connect))
{
     SQLiteDataReader reader = command.ExecuteReader();
     while (reader.Read())
     {
         var seat = reader["seatNumber"].ToString();
         var chk = string.Format("checkBox{0}", seat);

         if (reader["seatTaken"].ToString() == "True")
         {
             ((CheckBox)form1.FindControl(chk)).BackColor = Color.CornflowerBlue;
         }
     }
}