CheckAllItemCheckedChanging and CheckAllItemCheckedChanged events will be used to detect when the user checks/unchecks the "Check All" item. In the CheckAllItemCheckedChanging event it is necessary to able able to cancel the operation. In the CheckAllItemCheckedChanged event all Items should be already checked/unchecked and the CheckedItems collection must be correct.
It should be similar to RadCheckedListBox: DataTable dt = new DataTable(); dt.Columns.Add("Id",typeof(int)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("IsChecked", typeof(int)); for (int i = 0; i < 10; i++) { dt.Rows.Add(i,"Item"+i,i%2); } this.radCheckedDropDownList1.DataSource = dt; this.radCheckedDropDownList1.DisplayMember = "Name"; this.radCheckedDropDownList1.ValueMember = "Id"; this.radCheckedDropDownList1.CheckedMember = "IsChecked";
The user won't be allowed to enter some text if a match doesn't exist.
Add StartsWith autocomplete mode as in the RadDropDownList.
Note: in data bound scenario, when setting the DescriptionTextMember property, DescriptionTextListDataItems should be created. Workaround: use custom items: private void radCheckedDropDownList1_CreatingVisualListItem(object sender, CreatingVisualListItemEventArgs args) { args.VisualItem = new CustomRadListVisualItem(); } public class CustomRadListVisualItem : RadCheckedListVisualItem { protected override Type ThemeEffectiveType { get { return typeof(RadListVisualItem); } } LightVisualElement description = new LightVisualElement(); protected override void CreateChildElements() { base.CreateChildElements(); StackLayoutPanel stack = this.Children.First() as StackLayoutPanel; description.ForeColor = Color.Gray; stack.Children.Add(description); } public override void Synchronize() { base.Synchronize(); RadCheckedListDataItem dataItem = (RadCheckedListDataItem)this.Data; if (dataItem != null) { DataRowView drv = dataItem.DataBoundItem as DataRowView; if (drv != null) { description.Text = drv.Row[dataItem.Owner.DescriptionTextMember] + ""; } } } }
Similar functionality is available for RadTreeView: http://www.telerik.com/help/winforms/treeview-editing-editing-nodes.html
The ASP suite alredy have this: http://demos.telerik.com/aspnet-ajax/combobox/examples/functionality/checkboxes/defaultcs.aspx?show-source=true
Currently, RadListView does not support drag and drop functionality when the lasso selection is enabled. Add functionality to support both of them similar to Windows Explorer.
Currently, the controls do not support the case where data source custom objects contain properties with equal names (for example "ID" and "id").
Add the ability to resize all columns to fill the available space, same as the AutoSizeColumnsMode property of RadGridView
WORKAROUND: radListView1.Groups[0].PropertyChanged += Form1_PropertyChanged; .............. void Form1_PropertyChanged(object sender, PropertyChangedEventArgs e) { if (e.PropertyName == "Expanded") { ListViewDataItemGroup group = (ListViewDataItemGroup)sender; RadMessageBox.Show(group.Text + " is expanded = " + group.Expanded); } }
Currently, you could not change the position of the check box. The code below does not effect at all the appearance of the checkbox in the RadListView control: e.VisualItem.ToggleElement.Alignment = System.Drawing.ContentAlignment.MiddleCenter; e.VisualItem.ToggleElement.TextImageRelation = TextImageRelation.ImageAboveText; e.VisualItem.ToggleElement.TextAlignment = System.Drawing.ContentAlignment.TopCenter; e.VisualItem.ToggleElement.ImageAlignment = System.Drawing.ContentAlignment.BottomCenter;
Add BestFit functionality similar to the one in RadGridView.
Currently, when you edit the Columns collection of RadListView, you cannot change the Name of the newly added columns.
IMRPOVE. RadListView - add option to choose whether the newly added items should be automatically selected or not (added by user or by DataSource)
For example when checkboxes are enabled, the left side of the first header cells shows the resize cursor, while it should not, because the check boxes area cannot be resized.
It would be more convenient to the end user to have a single checkbox in the header of RadListView(DetailsView) which will check/uncheck all the items in RadListView. Also, the group items should have a checkbox which checks/unchecks all the items in that group.