2014-08-27 72 views
2

我在我的应用程序中使用radsearchbox。数据源正在运行,并在下拉菜单中显示值,但是当我在下拉列表中选择某个项目时,该文本框未填充。我的代码是Radsearchbox不显示选定的文本

<telerik:RadSearchBox ID="RadSearchBox1" runat="server" 
     Filter="StartsWith" EnableAutoComplete="true" DataTextField="Name"> 

    </telerik:RadSearchBox> 

和代码

string comtext = "select Name from tblcustomer"; 

     SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString); 

     SqlCommand cmd = new SqlCommand(comtext, con); 
     SqlDataAdapter da = new SqlDataAdapter(cmd); 
     DataSet ds = new DataSet(); 
     da.Fill(ds); 

     RadSearchBox1.DataSource = ds; 
     RadSearchBox1.DataBind(); 
+0

什么在你的解决方案最终结束? – paqogomez 2014-10-02 19:03:44

回答

1

您的问题可能是你没有使用SearchContext。但我认为你只需要指定搜索框的关键字段。请注意,参数DataValueField指向您的表的ID。 (更改为您的特定表ID字段)

<telerik:RadSearchBox ID="RadSearchBox1" 
         runat="server" 
         DataTextField="Name" 
         DataValueField="TableID" > 
</telerik:RadSearchBox> 

您还需要更改查询字符串以将ID包含在数据集中。

string comtext = "select Name, TableID from tblcustomer"; 

Telerik's RadSearch demo page可以给如何在需要时使用SearchContext例子。

+0

我正在使用2013版本。当我添加搜索上下文时,它会给出不支持搜索上下文的错误。 – 2014-08-27 15:44:02

+0

@HananZubairi,搜索上下文只是把下拉菜单放在搜索栏旁边,试图更有效地限制你的结果。刚刚添加数据值字段时发生了什么? – paqogomez 2014-08-27 15:46:58

+0

没有任何工作。我在数据库中添加了id字段,并且添加了datatextfield和datavaluefield,但这不起作用。就像如果我键入b列表显示名称与b,但是当我点击下拉列表中的名称不是填充文本输入字段。 – 2014-08-27 16:51:12