2009-05-20 34 views
3

我使用的是最新的2009 RadCombobox Ajax控件,我使用構建功能從Web服務填充它。添加項目到Telerik Ajax RadComboBox從webservice填充後

我還想推出一個更多的項目,以便用戶可以選擇不選擇任何東西。基本上使控制可選。現在,如果他們選擇了一些東西然後改變了想法,他們根本無法改變它。

每次我嘗試添加一些它不起作用或完全清除從web服務填充的內容。而且我不希望web服務返回並清空項目,以使控件正常工作。

<telerik:RadComboBox ID="combo" runat="server" 
        Skin="Office2007" 
        AllowCustomText="false" 
        EnableLoadOnDemand="true" 
        AppendDataBoundItems="true" 
        Text="" 
        Width="300" Height="200"> 
        <ExpandAnimation Type="None" /> 
        <CollapseAnimation Type="None" /> 
        <WebServiceSettings Path="~/Service.asmx" Method="GetStuff" /> 

       </telerik:RadComboBox> 

感謝

+0

你如何填充組合框?使用數據綁定還是手動填充它? – 2009-05-20 15:40:26

回答

5

難道這樣的事情,你有什麼想法? 加載數據後添加一個額外的項目。

<script type="text/javascript"> 
    //<![CDATA[ 
    function OnClientItemsRequested(sender, eventArgs) { 
     var combo = $find("<%= RadComboBox1.ClientID %>"); 
     var intextput = "<All Items>"; 
     var comboItem = new Telerik.Web.UI.RadComboBoxItem(); 
     comboItem.set_text(intextput); 
     comboItem.set_value("-1"); 
     combo.trackChanges(); 

     combo.get_items().add(comboItem); 
     comboItem.select(); 
     combo.commitChanges(); 
     comboItem.scrollIntoView(); 
    } 
    //]]> 
    </script> 



<telerik:RadComboBox runat="server" ID="RadComboBox1" 
     EnableLoadOnDemand="true" 
     OnClientItemsRequesting="OnClientItemsRequesting" 
     OnClientItemsRequested="OnClientItemsRequested"> 
     <WebServiceSettings Method="GetMyData" Path="http://localhost:1606/Service1.asmx" /> 
    </telerik:RadComboBox> 
+0

@Neil,應該可以通過掛鉤OnClientItemsRequesting事件並在該處理程序中添加項目。 – 2010-10-07 09:51:01