我有33个复选框,这是一个有自己座位号的公交车座位,我的bus_seats表中也有33列。在我的表单和数据库中,一切都已设置完毕。但我坚持将值从sql分配给复选框。我可以手动设置
{{1}}
正如您在代码中看到的那样,读者[" 5"]是我在sql表中的第五个席位,而checkBox5是我表格中的第五个席位。我不想手动分配它们并创建巨大的" if"声明。有没有简单的方法来比较列值和复选框值?在我的代码中读者[" 5"] == 1 表示女性(粉红色)占用第5席位,2表示男子占用(蓝色),0表示空(灰色)。我试图通过他们的sql值
着色复选框背景颜色答案 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;
}
}
}