Replicate by dragging a RadListBox item vertically in the Drag-and-drop demo, on a mobile device.
I would like to implement a list picker with item grouping in the destination Asp.Net RadListBox.
Unfortunately the Telerik Asp.net RadListBox control does not seem to support item grouping natively. I have seen a forum post from 2019 that suggests adding custom group items https://www.telerik.com/forums/subheadings-in-radlistbox We could do this but would prefer a more native solution.
Setting EnableEmbeddedSkins="false" in RadGrid when FilterType="HeaderContext" is not applied to the ListBox (filterCheckList) hence the following error is thrown:
RadListBox allows to declaratively bind the Text and Value properties of the ListItems, e.g: <telerik:RadListBox runat="server" DataTextField="Text" DataValueField="Id"> Unfortunately, this is not possible for the ImageUrl property. My Suggestion: please allow to also bind the ImageUrl declaratively as known from other controls, e.g: <telerik:RadListBox runat="server" DataTextField="Text" DataValueField="Id" DataImageUrlField="..." // and maybe even like this: DataImageUrlFormatString="..." DataImageUrlFields="...">
When there are few checkbox items in RadListBox (i.e. there is no scroll bar), checked items cannot be unchecked. The issue is reproducible in iPAD.
The error is observed when an item that is added from the client-side is to be transferred to other RadListBox from a RadListBox that is loading on demand. Unfortunately the control supports such scenario only when that transfer is made from the server side.
Enabling/Disabling the ListBox on the client is not persisted across PostBacks.
ListBox markup
<telerik:RadListBox runat="server" ID="RadListBoxA" CheckBoxes="true" Enabled="false">
<Items>
<telerik:RadListBoxItem Text="Item 1" />
<telerik:RadListBoxItem Text="Item 2" />
<telerik:RadListBoxItem Text="Item 3" />
<telerik:RadListBoxItem Text="Item 4" />
</Items>
</telerik:RadListBox>
<telerik:RadButton runat="server" ID="RadButton1" Text="Toggle State" AutoPostBack="false" OnClientClicked="ToggleListBoxStates" />
<telerik:RadButton runat="server" ID="RadButton2" Text="Postback" AutoPostBack="true" />
OnClientClicked event handler
function ToggleListBoxStates(sender, args) {
var listBoxA = $find("<%= RadListBoxA.ClientID %>");
listBoxA.trackChanges();
listBoxA.set_enabled(!listBoxA.get_enabled());
listBoxA.commitChanges();
}
Run the example, change the ListBox state and do a PostBack.
Notice, the state changes back.
<telerik:RadListBox
RenderMode="Lightweight"
runat="server"
ID="RadListBoxSource"
AllowTransfer="true"
TransferToID="RadListBoxDestination"
ButtonSettings-AreaWidth="35px">
<EmptyMessageTemplate>
empty message
</EmptyMessageTemplate>
</telerik:RadListBox>
<telerik:RadListBox
RenderMode="Lightweight"
runat="server"
ID="RadListBoxDestination"
ButtonSettings-AreaWidth="35px">
<EmptyMessageTemplate>
empty message2
</EmptyMessageTemplate>
</telerik:RadListBox>