Completed
Last Updated: 06 Jun 2019 13:37 by ADMIN
Release R2 2019 SP1 (LIB 2019.2.610)
Created by: Lorenzo
Comments: 1
Category:
Type: Bug Report
1

Hello,

I have 2 models with properties. I get an error when changing the datasource

I assign them in the following way:

CardView1.DataSource = BindingList<Model1>

CardView1.Datasource = BindingList2>Model2>

 

When i swap the datasource i get the following error: "There is no property descriptor corresponding to property name: Code"

"Code" is a property only present in the first model (Model1).

 

Seems like i have to reset some properties before swapping datasource? i already tried CardView1.DataSource = null before assigning Model2 but got same error

Completed
Last Updated: 28 May 2019 16:00 by ADMIN
Release R2 2019 SP1 (LIB 2019.2.527)
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 0
Category:
Type: Bug Report
3
To reproduce: run the attached sample project on 150%.

Workaround: this.radCheckedDropDownList1.Multiline = true;
Approved
Last Updated: 24 May 2019 05:13 by ADMIN

Hello,

I'm populating a CardView from a BindingList:

CardView1.DataSource = BindingList<Model1>;

 

Aftre loading the information inside the cards is not displayed until i click on a card (see attachment), after clicking on a card all the cards display the information correctly

Completed
Last Updated: 23 May 2019 13:20 by ADMIN
Release R2 2019 SP1 (LIB 2019.2.527)

Hi,

This is related to ticket#1401471 , the other ticket was accidentally closed. Please see the screen shot using the below settings mentioned i was able to achieve the Icon display but grouping is not showing correctly, is there setting for grouping also to display correctly?

https://www.telerik.com/account/support-tickets/view-ticket/1401471


radListView1.CheckBoxesPosition = CheckBoxesPosition.Top

The text and the image alignment can be set in the VisualItemFormatting event:
Private Sub RadListView1_VisualItemFormatting(ByVal sender AsObjectByVal As ListViewVisualItemEventArgs)
    Dim item = TryCast(e.VisualItem, IconListViewVisualItem)
    If item IsNot Nothing Then
        item.TextImageRelation = TextImageRelation.TextAboveImage
        item.TextAlignment = ContentAlignment.MiddleCenter
        item.ImageAlignment = ContentAlignment.MiddleCenter
    End If
End Sub

 

Declined
Last Updated: 16 May 2019 10:45 by ADMIN
Please run the attached sample project and follow the steps from the attached gif file to replicate the visual glitch.
Completed
Last Updated: 07 May 2019 08:23 by ADMIN
Release R2 2019

Steps:

1) Add a RadForm with a button and a ListView in DetailView mode.

2) Add some columns. Add some items with values for each cell.

3) Apply Fluent Theme to all controls.

4) In the click handler of the button clear the listview items collection.

5) Run the app, select a row. Click the button to clear the list.

 

Desired Result:

The listview should have a consistent column highlight style between the default Rad theme and Fluent Theme, and/or MS WinForms.

 

Actual Result:

See attachment. The associated column of the selected cell is highlighted but only in the Fluent Theme, and it remains highlighted even in an empty listview. My user's are confused and complaining.

Not sure why Fluent is highlighting columns when the default theme doesn't.

 

Work Around:

Loop through all of the listview headers and reset the colors.

            foreach(var item in this.radListView1.RootElement.ChildrenHierarchy)
            {
                if (item is DetailListViewHeaderCellElement)
                {
                    var Header = item as DetailListViewHeaderCellElement;
                    Header.BackColor = SystemColors.Control;
                    Header.ForeColor = SystemColors.ControlText;
                }
            }
Approved
Last Updated: 18 Apr 2019 08:15 by ADMIN

Populate a RadListView with data, apply ListViewType.DetailsView and disable the ShowGridLines property.

With the ControlDefault theme it works, but if you apply the CrystalDark theme, the grid lines are still visible

Completed
Last Updated: 30 Jan 2019 15:57 by ADMIN
Please run the attached sample project and you will notice the big spacing between the first item in a group and the rest of the items within the group.
Completed
Last Updated: 26 Nov 2018 15:42 by Dimitar
How to reproduce: check the attached video

Workaround: create a custom drag-drop service
public partial class RadForm1 : Telerik.WinControls.UI.RadForm
{
    public RadForm1()
    {
        InitializeComponent();
        this.radListView1.AllowDragDrop = true;
        this.radListView2.AllowDragDrop = true;

        this.radListView1.ListViewElement.DragDropService = new CustomListViewDragDropService(this.radListView1.ListViewElement);
        this.radListView2.ListViewElement.DragDropService = new CustomListViewDragDropService(this.radListView2.ListViewElement);
    }
}

public class CustomListViewDragDropService : ListViewDragDropService
{
    public CustomListViewDragDropService(RadListViewElement owner)
        : base(owner)
    { }

    protected override void HandleMouseMove(Point mousePos)
    {
        int? scroll = null;
        SimpleListViewVisualItem item = this.DropTarget as SimpleListViewVisualItem;
        if (item != null && item.Data.Owner != this.Owner)
        {
            scroll = this.Owner.ViewElement.VScrollBar.Value;
            Point clientPos = item.Data.Owner.ViewElement.PointFromScreen(mousePos);

            if ((clientPos.Y < 0 && item.Data.Owner.ViewElement.Orientation == Orientation.Vertical) ||
                (clientPos.X < 0 && item.Data.Owner.ViewElement.Orientation == Orientation.Horizontal))
            {
                item.Data.Owner.ViewElement.Scroller.Scrollbar.PerformSmallDecrement(1);
            }
            else if ((clientPos.Y > item.Data.Owner.Size.Height && item.Data.Owner.ViewElement.Orientation == Orientation.Vertical) ||
                (clientPos.X > item.Data.Owner.Size.Width && item.Data.Owner.ViewElement.Orientation == Orientation.Horizontal))
            {
                item.Data.Owner.ViewElement.Scroller.Scrollbar.PerformSmallIncrement(1);
            }
        }

        base.HandleMouseMove(mousePos);

        if (scroll.HasValue)
        {
            this.Owner.ViewElement.VScrollBar.Value = (int)scroll;
        }
    }
}

Declined
Last Updated: 24 Nov 2018 23:13 by KKL
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 3
Category:
Type: Bug Report
1
To reproduce: run the attached sample project. Select an item and press F2, select a new item from the drop-down. You will encounter an error because the ActiveEditor is now null in the ItemValueChanging event.

Workaround: in the EditorInitialized event you can subscribe to the RadDropDownListElement.SelectedIndexChanging event:

private void radListView1_EditorInitialized(object sender, ListViewItemEditorInitializedEventArgs e)
{
    ListViewDropDownListEditor editor = e.Editor as ListViewDropDownListEditor;
    if (editor==null)
    {
        return;
    }
    RadDropDownListElement dropdown = (RadDropDownListElement)editor.EditorElement;
    dropdown.SelectedIndexChanging-=dropdown_SelectedIndexChanging;
    dropdown.SelectedIndexChanging+=dropdown_SelectedIndexChanging;
}


Approved
Last Updated: 15 Oct 2018 10:52 by ADMIN
To reproduce: run the sample project, select an item, press F2 and select a new item. You are expecting the BaseDropDownListEditorElement.SelectedIndexChanging event is fired in this case and you may be able to cancel the new selection in certain conditions.
Completed
Last Updated: 28 Sep 2018 08:44 by Dimitar
To reproduce: add a RadListView with several items that start with "a". One of the items should start with "aa". Enable the keyboard navigation. If you type "aa" fast so that it is within the specified KeyboardSearchResetInterval, the user should be navigated to the item that starts with "a". 

        Dim dt As New DataTable
        dt.Columns.Add("Column1")
        dt.Columns.Add("Column2")
        dt.Columns.Add("Column3")
        Dim dr1 As DataRow = dt.NewRow
        Dim dr2 As DataRow = dt.NewRow
        Dim dr3 As DataRow = dt.NewRow
        Dim dr4 As DataRow = dt.NewRow
        Dim dr5 As DataRow = dt.NewRow
        dr1.ItemArray = {"aaron", "Waters", "Florida"}
        dt.Rows.Add(dr1)
        dr2.ItemArray = {"Andrew", "Smith", "Ohio"}
        dt.Rows.Add(dr2)
        dr3.ItemArray = {"Art", "Graves", "Michigan"}
        dt.Rows.Add(dr3)
        dr4.ItemArray = {"Bridgette", "Patterson", "Colorado"}
        dt.Rows.Add(dr4)
        dr5.ItemArray = {"Amanda", "Patterson", "Colorado"}
        dt.Rows.Add(dr5)
        LV_Contacts.DataSource = dt
        LV_Contacts.DisplayMember = "Column1"

        Me.LV_Contacts.KeyboardSearchEnabled = True
        Me.LV_Contacts.KeyboardSearchResetInterval = 2000

Workaround:

   Public Class MyListView
        Inherits RadListView
        Protected Overrides Function CreateListViewElement() As RadListViewElement
            Return New MyRadListViewElement()
        End Function
        Public Overrides Property ThemeClassName As String
            Get
                Return GetType(RadListView).FullName
            End Get
            Set(value As String)
                MyBase.ThemeClassName = value
            End Set
        End Property
    End Class

    Public Class MyRadListViewElement
        Inherits RadListViewElement

        Protected Overrides Function CreateViewElement() As BaseListViewElement
            If Me.ViewType = ListViewType.DetailsView Then
                Return New CustomDetailListViewElement(Me)
            End If

            Return MyBase.CreateViewElement()
        End Function
        Protected Overrides ReadOnly Property ThemeEffectiveType() As Type
            Get
                Return GetType(RadListViewElement)
            End Get
        End Property
    End Class


    Public Class CustomDetailListViewElement
        Inherits DetailListViewElement
        Public Sub New(owner As RadListViewElement)
            MyBase.New(owner)

        End Sub
        Protected Overrides ReadOnly Property ThemeEffectiveType() As Type
            Get
                Return GetType(DetailListViewElement)
            End Get
        End Property

        Dim searchBuffer As StringBuilder
        Protected Overrides Sub HandleNavigation(keyChar As Char)
            If Not Me.Owner.KeyboardSearchEnabled Then
                Return
            End If

            Dim fi As FieldInfo = GetType(BaseListViewElement).GetField("typingTimer", BindingFlags.Instance Or BindingFlags.NonPublic)
            Dim typingTimer As Timer = TryCast(fi.GetValue(Me), Timer)
            If typingTimer.Enabled Then
                typingTimer.[Stop]()
                typingTimer.Start()
            Else
                searchBuffer = New StringBuilder()
                typingTimer.Start()
            End If

            searchBuffer.Append(keyChar)
            Dim searchCriteria As String = searchBuffer.ToString()
            Dim itemToSelect As ListViewDataItem = GetFirstMatch(searchCriteria)

            If itemToSelect IsNot Nothing Then
                Me.ProcessSelection(itemToSelect, Keys.None, False)
            End If
        End Sub
    End Class
Completed
Last Updated: 27 Sep 2018 07:54 by Dimitar
To reproduce: please run the attached sample project and follow the steps illustrated in the gif file.

Workaround: use customRadCheckedListDataItems and disabled the autocomplete functionality while refilling the items

        private void button1_Click(object sender, EventArgs e)
        { 
            radCheckedDropDownList1.Items.Clear(); 

            radCheckedDropDownList1.AutoCompleteMode = AutoCompleteMode.None;
            foreach (string item in list)
            {
                radCheckedDropDownList1.Items.Add(new CustomRadCheckedListDataItem(item, false));
            }
            radCheckedDropDownList1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
        }

        public class CustomRadCheckedListDataItem : RadCheckedListDataItem
        { 
            public CustomRadCheckedListDataItem(string item, bool isCheched) : base(item,isCheched)
            {
            }
            
            public override bool Checked
            {
                get
                {
                    if (this.ownerElement == null)
                    {
                        return false;
                    }
                    return base.Checked;
                }
                set
                {
                    base.Checked = value;
                }
            }
        }
Completed
Last Updated: 29 Aug 2018 09:42 by Dimitar
This is necessary in order to create custom items in the autocomplete drop down  and add checkboxes in this popup as well.
Completed
Last Updated: 07 Aug 2018 12:10 by Dimitar
To reproduce: run the attached sample project and follow the steps in the gif file.

Workaround: don't use Begin/EndUpdate when best-fitting the column.
Completed
Last Updated: 07 Aug 2018 08:25 by Dimitar
To reproduce: use the following code snippet and follow the steps from the attached gif file:

      private List<sampleClass> MyList = new List<sampleClass>();

        public RadForm1()
        {
            InitializeComponent();
            MyList.Add(new sampleClass("Test 1"));
            MyList.Add(new sampleClass("Test 2"));
            MyList.Add(new sampleClass("Test 3"));
            MyList.Add(new sampleClass("Test 4"));
            MyList.Add(new sampleClass("Test 5"));
            radListView1.DataSource = MyList; 
        }
        
        private void radButton1_Click(object sender, EventArgs e)
        {
            this.radListView1.BeginEdit();
        }

        private void radButton2_Click(object sender, EventArgs e)
        {
            this.radListView1.EndEdit();
        }

        private void radListView1_ItemValueChanged(object sender, Telerik.WinControls.UI.ListViewItemValueChangedEventArgs e)
        {
            radListView1.BeginUpdate();
            radListView1.CurrentColumn.BestFit();
            radListView1.EndUpdate();
        }
    }

    public class sampleClass
    {
        public string test { get; set; }

        public sampleClass()
        {
        }

        public sampleClass(string Val)
        {
            test = Val;
        }
    }

Workaround: use the ItemEdited event instead of the ItemValueChanged event.
Completed
Last Updated: 06 Aug 2018 10:56 by Dimitar
Completed
Last Updated: 01 Jun 2018 14:29 by Dimitar
To reproduce: run the attached project and click the button.

Workaround: set the RadCheckedDropDownList.AutoSize property to false before manipulating the Dock property.
Completed
Last Updated: 03 May 2018 06:50 by Dimitar
By default, RadCheckedDropDownList.AutoSize property is  true. If you put the control inside a TableLayoutPanel and check several items, the internal autocomplete box is sized properly , but the height of RadCheckedDropDownList is not adjusted. 

Workaround: set explicitly the RadCheckedDropDownList.AutoSize property to true;
Completed
Last Updated: 02 Mar 2018 16:08 by Dimitar
Use attached to reproduce.

Workaround:
class MyListView : RadListView
{
    protected override RadListViewElement CreateListViewElement()
    {
        return new MyListViewElement();
    }
}
class MyListViewElement : RadListViewElement
{
    protected override Type ThemeEffectiveType => typeof(RadListViewElement);

    public override void SynchronizeVisualItems()
    {       
        for (int i = 0; i < this.ViewElement.ViewElement.Children.Count; i++)
        {
            BaseListViewVisualItem visualItem = (BaseListViewVisualItem)this.ViewElement.ViewElement.Children[i];
            visualItem.Synchronize();
        }
        this.Invalidate();
    }
}
1 2 3 4 5 6