我有一个从数据库中填充的Rad下拉列表。 我需要添加第一项,索引0但我没有赢。
public void FillDropDownList(string connString)
{
String query = "......";
using (var cn = new SqlConnection(connString))
{
cn.Open();
DataTable dt = new DataTable();
try
{
SqlCommand cmd = new SqlCommand(query, cn);
SqlDataReader myReader = cmd.ExecuteReader();
dt.Load(myReader);
}
catch (SqlException e)
{
//TODO
}
radDropDownList1.DataSource = dt;
radDropDownList1.ValueMember = "...";
radDropDownList1.DisplayMember = "....";
}
radDropDownList1.Items.Add(0,"Select a table...");//this does not work
}
索引" 0,"给我错误" Unknow方法insert(int,string)。
如何在此类下拉列表中添加索引0处的项目?
答案 0 :(得分:0)
你不能添加这样的项目。您需要先创建list of strings
:
List<string> strList = new List<string>();
在列表中添加一个字符串
strList.Add("....");
最后将 strList 添加到radDropDownList1
:
radDropDownList1.Items.AddRange(strList);
修改强>
因此,您不想添加项目,而是要更改现有项目:
radDropDownList1.Items[0].Text = "Select a table...";
答案 1 :(得分:0)
您可以将元素添加到查询中,这将是更简单的方法:
SELECT 0 ORDER, "First Element" FROM DUAL
UNION
SELECT 1 ORDER, FIELD_NAME FROM TABLE_NAME WHERE CODITION = VALUE
ORDER BY ORDER
(假设Oracle为数据库,其他语法相似)
否则,您可以在查询之后以及将数据表与下拉列表关联之前将其添加到DataTable。
或者您也可以将它添加到dropdonwlist的数据绑定事件
答案 2 :(得分:0)
如果您可以使用radcombobox,那么它有一个属性可以在调用之后完成我的想法&#34; EmptyMessage&#34;
<telerik:RadComboBox ID="RadComboBox1" runat="server" EmptyMessage="Select a table...">
</telerik:RadComboBox>