显示True/False数据类型值到下拉列表
本文关键字:下拉列表 数据类型 False True 显示 | 更新日期: 2023-09-27 18:19:03
我喜欢显示数据库的值,它存储为True/False数据类型。我想把这个数据渲染到下拉列表。
所以当值是"真"在数据库中,我喜欢显示它为下拉列表中的"是"。如果数据库中的值为"false",我喜欢在下拉列表中显示为"No"。
DataSet ds = getDetails(username);
if (ds.Tables.Count > 0) {
TextBox1.Text = ds.Tables[0].Rows[0]["fName"].ToString();
TextBox2.Text = ds.Tables[0].Rows[0]["lName"].ToString();
TextBox3.Text = ds.Tables[0].Rows[0]["username"].ToString();
TextBox2.Text = ds.Tables[0].Rows[0]["password"].ToString();
if (Convert.ToInt32(ds.Tables[0].Rows[0]["admin"]) == 0) {
DropDownList1.SelectedValue = "Yes";
}
}
我所尝试的是,我在下拉列表中添加两个项目,一个值为"是"的"是"和另一个值为"否"的"否"。
在上面的代码中,我将true/false转换为int类型,并将其与另一个int类型进行比较。由于数据库存储true=0和false= -1,因此我在代码中比较它们以使下拉列表为Yes或No。但它不起作用。有人有简单的解决办法吗?
您只是错过了else
条款吗?
if (Convert.ToInt32(ds.Tables[0].Rows[0]["admin"]) == 0) {
DropDownList1.SelectedValue = "Yes";
} else {
DropDownList1.SelectedValue = "No";
}
你的下拉列表应该有2个项目
- 值为
"-1"
,表示false。 - 值为
"0"
的一个,代表true。
Note: the standard value are 0 for false and 1 for true, you might want to use those eventually
你当然可以自由设置他们的文本为"真"/"假"或其他。
然后将SelectedValue设置为列的实际值。
DropDownList1.SelectedValue = ds.Tables[0].Rows[0]["admin"].ToString();