C# 如何在组合框中设置默认空值

C# 如何在组合框中设置默认空值,c#,asp.net,combobox,C#,Asp.net,Combobox,通过这段代码,我将combobox绑定到数据库,并且我能够从数据库中填充combobox。但是,当我打开页面时,combobox默认包含数据库中的一个值..表示从数据库列表中填充的第一个名称显示在combobox上..我想在combobox上显示为空..表示应该在我将从下拉列表中选择某些内容之前,不会显示任何打印内容。如何执行此操作?您可以这样定义标记: dr = new MySqlDataAdapter("select tvl_code, concat_ws(',', tvl_code

通过这段代码,我将combobox绑定到数据库,并且我能够从数据库中填充combobox。但是,当我打开页面时,combobox默认包含数据库中的一个值..表示从数据库列表中填充的第一个名称显示在combobox上..我想在combobox上显示为空..表示应该在我将从下拉列表中选择某些内容之前,不会显示任何打印内容。如何执行此操作?

您可以这样定义标记:

dr = new MySqlDataAdapter("select tvl_code, 
   concat_ws(',', tvl_code, citi_name) citiname 
   from code_desc where travel_mode = 'BUS'", conn);
ds1 = new DataSet();
dr.Fill(ds1);
ddlfrom.DataSource = ds1;
ddlfrom.DataTextField = "citiname";
ddlfrom.DataValueField = "tvl_code";
ddlfrom.DataBind();

通过使用
AppendDataBoundItems=“true”
可以使用静态元素追加绑定的集合


我更喜欢这种方法向业务逻辑中添加一个“假”元素,因为如果查询的其他使用者不需要假值,它会使您的逻辑更加可重用。此外,默认值听起来更像是UI关注点,而不是数据关注点。

您可以在实际数据之前附加空行

<asp:DropDownList AppendDataBoundItems="true" runat="server"  DataTextField="Text" DataValueField="Id">
    <asp:ListItem Text="Select..." Value="" />   
</asp:DropDownList>

由于示例代码位于代码隐藏中

dr = new MySqlDataAdapter("select null, null union select tvl_code, concat_ws(',', tvl_code, citi_name) citiname from code_desc where travel_mode = 'BUS'", conn);
...
希望这有帮助

试试这个:

// do the databinding
dr.Fill(ds1);

DataRow row = ds1.Tables[0].NewRow();
row["tvl_code"] = -1;
row["citiname"] = "Select City";

// insert the row at the top of the table
ds1.Tables[0].Rows.InsertAt(row, 0);

ddlfrom.DataSource = ds1;
ddlfrom.DataTextField = "citiname";
ddlfrom.DataValueField = "tvl_code";
ddlfrom.DataBind();
像这样:

ddlfrom.Items.Insert(0, "Select...");

您可以在数据绑定代码之后添加以下语句

dr = new MySqlDataAdapter("select tvl_code, concat_ws(',', tvl_code, citi_name) citiname from code_desc where travel_mode = 'BUS'", conn);
ds1 = new DataSet();
dr.Fill(ds1);
ddlfrom.DataSource = ds1;
ddlfrom.DataTextField = "citiname";
ddlfrom.DataValueField = "tvl_code";
ddlfrom.DataBind();
ddlfrom.Items.Insert(0, "Select...");

要在下拉列表中添加空白值,可以在绑定控件后添加以下代码:

ddlfrom.Items.Insert(-1,new ListItem("TEXT","-1"));

这将添加一个空白文本,在-1索引的顶部有-1值。

我这样做了..没有得到..实际上数据库中的所有城市名称都是按字母顺序排列的oredr..并且它也以相同的顺序显示在我的dropdownlist中…但是默认情况下,当我打开或运行该页面时..数据库中的第一个城市以“a”开头打印在框上。我想显示默认为空的框…@Naveen31使用
@Naveen31尝试我的答案
ddlfrom.Items.Insert(-1,new ListItem("","-1"));