RadComboBox for ASP.NET

Load On Demand - External Streamline Send comments on this topic.
See Also
Load On Demand Support > Load On Demand - External Streamline

Glossary Item Box

The ExternalCallBackPage property of Telerik RadCombobox has to be used when you need to place the combobox inside a user control (an ASCX file). You can also use ExternalCallBackPage for complex load-on-demand scenarios, e.g. load-on-demand combobox inside an asp:datagrid EditTemplate. The callback ItemsRequested event fires only when the combobox is initially visible in the page life-cycle (Page.IsPostBack == false). This is often not the case when the combobox has been added dynamically to the page or when the combo is inside a template that is not initially visible (EditTemplate in asp:datagrid for example). That is where ExternalCallBackPage comes to help. 

Remark: The combobox aspx definitions (including server IDs) of Telerik RadComboBox must be identical in both the parent and external streamer pages.

ExternalCallBackPage is a normal ASP.NET ASPX page that contains only one instance of Telerik RadComboBox. The ID of the instance should match the ID of the combobox initiating the request. You can then wire the ItemsRequested event handler of the external combobox and write your custom logic, the same way you would do in the original page. Finally, set the ExternalCallBackPage property of the original combobox to the name of the callback (streamer) page. The path is relative to the current path of the parent page (e.g. no path needed if the streamer page is in the same folder - just the name of the file).

One additional benefit of ExternalCallBackPage is that methods in the original page lifecycle (Page_Init, Page_Load, etc) do not get executed - the execution is directly transferred to the external streamer page.

 

Example

External Streamline

 

  Copy Code
<radcb:RadComboBox
        
DataSource='<%# LoadCompanyNames() %>'
        
DataTextField="CompanyName"
        
ExternalCallBackPage="ComboStreamer.aspx"
        
EnableLoadOnDemand="True"
        
Skin="WindowsXP"
        
Runat="server"
        
id="RadComboBox1"
        
Runat="server"
        
Height="140px"
        
Width="150px">
</
radcb:RadComboBox>

See Also