从下拉列表(不是GridView)的数据库中选择的值

本文关键字:数据库 选择 下拉列表 不是 GridView | 更新日期: 2023-09-27 18:04:18

我在asp.net 4.0和C-sharp工作。

我有一个表单页。(Inside是ID)并保存值SN在数据库中的匹配字段:

<asp:DropDownList ID="Inside" runat="server" Width="100" CssClass="ddl_Class">
  <asp:ListItem Text="-------" Value=""></asp:ListItem>
  <asp:ListItem Text="S" Value="S"></asp:ListItem>
  <asp:ListItem Text="N" Value="N"></asp:ListItem>
</asp:DropDownList>

我需要的是,当字段Inside在数据库中的值是有效的,不是null,在DropDownList中它选择的值设置在数据库中,并禁用DropDownList。

我已经在.cs页面中尝试了此代码,但没有成功。

有人知道我怎么做吗?

后台代码

InsideDB = dr["Inside"].ToString();
if (!string.IsNullOrEmpty(InsideDB.ToString()))
{
  Inside.Text = InsideDB.ToString();
  Inside.Enabled = false;
}
else
{
  Inside.Enabled = true;
}

从下拉列表(不是GridView)的数据库中选择的值

尝试SelectedValue代替Text属性

InsideDB = dr["Inside"].ToString();
Inside.Enabled = true;
if (!string.IsNullOrEmpty(InsideDB.ToString()))
{
  Inside.SelectedValue = InsideDB.ToString();
  Inside.Enabled = false;
}

试试

Inside.SelectedIndex = Inside.Items.IndexOf(Inside.Items.FindByText(InsideDB.ToString()));

代替Inside.Text = InsideDB.ToString();

这里假设下拉列表中已经有一个包含该文本的项。

我知道这是一个旧的帖子。但这可能对其他人有帮助。

Inside.Items.FindByText(InsideDB.ToString()).Selected=true;
Inside.Enabled = false;