Source code:
<asp:Content ID="Content3" ContentPlaceHolderID="ReportBuilderContent" runat="server">
<div>
<telerik:RadAjaxPanel ID="panelDataSelection" runat="server">
<div style="float: left; padding-right: 10px">
<div>
Available Fields:</div>
<div>
<telerik:RadListBox ID="lstAvailableFields" runat="server" SelectionMode="Multiple"
AllowTransfer="true" AutoPostBackOnTransfer="true" AllowReorder="true" AutoPostBackOnReorder="true"
EnableDragAndDrop="true" TransferToID="lstSelectedFields" Height="300px"
Width="250px" AllowAutomaticUpdates="true"
OnInserted="OnAvailableListInserted"
OnUpdated="OnAvailableListUpdated"
Sort="Ascending" >
<ButtonSettings ShowReorder="false" ShowTransfer="false" ShowTransferAll="false"/>
</telerik:RadListBox>
</div>
<div align="center">
<br/>
<asp:Button ID="btnDone" runat="server" Text="I'm Done Choosing Fields" Width="170px" />
</div>
</div>
<div style="float: left">
<div>
Selected Fields:</div>
<div>
<telerik:RadListBox ID="lstSelectedFields" runat="server" SelectionMode="Multiple"
AllowTransfer="True" AutoPostBackOnTransfer="True" AllowReorder="True" AutoPostBackOnReorder="True"
EnableDragAndDrop="True" TransferToID="lstAvailableFields" Height="300px" Width="250px"
Sort="Ascending">
<ButtonSettings ShowReorder="false" ShowTransfer="false" ShowTransferAll="false" />
</telerik:RadListBox>
</div>
<div align="center">
<br/>
<asp:Button ID="btnReset" runat="server" OnClick="OnButtonResetClicked" Text="Reset" />
</div>
</div>
<div style="clear: both">
</div>
</telerik:RadAjaxPanel>
</div>
</asp:Content>
Code behind
/// <summary>
/// Event is fired on available list inserted.
/// </summary>
protected void OnAvailableListInserted(object sender, RadListBoxEventArgs e)
{
lstAvailableFields.SortItems();
}
/// <summary>
/// Event is fired on available list updated.
/// </summary>
protected void OnAvailableListUpdated(object sender, RadListBoxEventArgs e)
{
lstAvailableFields.SortItems();
}