Unplanned
Last Updated: 03 Jun 2020 09:50 by LindenauAtSOG
Implement a way to group columns cells vertically.
Unplanned
Last Updated: 01 Jun 2020 11:17 by ADMIN
When sorting a grouped RadGridView, the selection is lost. 
Completed
Last Updated: 01 Jun 2020 09:40 by ADMIN
Release LIB 2020.2.601 (06/01/2020)

When you have rows grouped by null value and you try to move one of the rows to another group, a NullReferenceException is thrown.

This is reproducible only when DataView is used as ItemsSource of RadGridView.

To work this around, avoid using null values. Or avoid using DataView.

Unplanned
Last Updated: 27 May 2020 10:45 by ADMIN
A NullReferenceException is raised when trying to edit a GridViewMultiColumnComboBoxColumn and the RadGridView's ItemsSource is a DataView.
Unplanned
Last Updated: 27 May 2020 06:57 by ADMIN
Created by: LindenauAtSOG
Comments: 3
Category: GridView
Type: Bug Report
2
As a Followup to this (Bad performance with grouping)Forumpost I managed to reproduce the issue now.
Since i cannot upload zip-files in the Forum I am doing it here.


The problem is, that a single grouping dramatically increases the time for sorting the values.
When the grouping is not present, sorting the same column is much faster.


It appears that it is related to the ammount of columns in total (not grouped).
The ammount of records is not so important, 100 (as in the attached sample) should not be significant.
Need More Info
Last Updated: 22 May 2020 11:47 by ADMIN

Hi guys,

we have a messaging service that broadcasts a couple of messages every 1-5 seconds.

When our client module receives those messages, we want to append them at the bottom of a grid (RadGridView).

After appending them, we also want to scroll to the very bottom of that grid, so that the newest and therefore bottommost items come into view.

 

Documentation and forums suggest we go the AttachedBahaviour and ScrollIntoViewAsync way.

 

Our behaviour looks like this:


    public class ScrollToNewItemBehavior : Behavior<RadGridView>
    { 
        public static bool GetIsEnabled(DependencyObject obj) => (bool)obj.GetValue(IsEnabledProperty);
        public static void SetIsEnabled(DependencyObject obj, bool value) => obj.SetValue(IsEnabledProperty, value);
        public static readonly DependencyProperty IsEnabledProperty = DependencyProperty.RegisterAttached("IsEnabled", typeof(bool), typeof(ScrollToNewItemBehavior), new PropertyMetadata(false, OnIsEnabledChanged));
        private static void OnIsEnabledChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            if (d is RadGridView gridView)
                gridView.Items.CollectionChanged += (s, args) =>
                {
                    if (args.Action == NotifyCollectionChangedAction.Add)
                    {
                        gridView.ScrollIntoViewAsync(args.NewItems[0], gridView.Columns[0], null);

                        // exchanging args.NewItems[0] for gridView.Items[gridView.Items.Count-1] yields same result
                        //gridView.ScrollIntoViewAsync(gridView.Items[gridView.Items.Count-1], gridView.Columns[0], null);
                    }
                };
        } 
    }


 

Our Message class:


    public class Message : ModelBase<Message>
    {
        public string Text { get; set; }
    }


Our Messages collection in the ViewModel:


        private RadObservableCollection<Message> _messages;
        public RadObservableCollection<Message> Messages
        {
            get => _messages;
            set
            {
                _messages = value;
                NotifyPropertyChanged(m => m.Messages);
            }
        }


The collection is updated (in the ViewModel) like this:


            Task.Run(async () =>
            {
                for (int i = 0; ; i++)
                {
                    await Task.Delay(1000);
                    Messages.Add(new Message { Text = $"{i} - sftrvwj,erhvtwejhrfvtjlwehftrwejh" });
                }
            });


 

The grid is defined like this:


    <telerik:RadGridView
        x:Name="gridView"
        ItemsSource="{Binding Messages, Mode=OneWay}"
        IsSynchronizedWithCurrentItem="False"
        IsPropertyChangedAggregationEnabled="True"
        AutoGenerateColumns="False" 
        SelectionMode="Single"
        CanUserFreezeColumns="False"
        EnableColumnVirtualization="True"
        EnableRowVirtualization="True"
        CanUserDeleteRows="False"
        CanUserInsertRows="False"
        behaviours:ScrollToNewItemBehavior.IsEnabled="True"
        CanUserGroupColumns="False"
        IsReadOnly="True"
        IsManipulationEnabled="False"
        CanUserReorderColumns="False"
        CanUserSearch="False"
        ShowGroupPanel="False">
        <telerik:RadGridView.Columns>
            <telerik:GridViewDataColumn
                DataMemberBinding="{Binding Text}"
                Header="Text"
                ShowDistinctFilters="False"
                IsSortable="False"/>
        </telerik:RadGridView.Columns>
    </telerik:RadGridView>


Nothing too fancy.

 

What we observe:


 

When a message is added, the view and the scroll indicator randomly jump to the top or the bottom of the grid and stay there until the next message is added.

We tried AddRange, Suspend-/ResumeNotifications, ObservableCollection instead of RadObservableCollection.

We disabled many grid features.

We tried .NetCore

,

we tried .net Framework

To no avail.

This seems to be a bug.

 

Do you know any workarounds or a completely different approach to achieve the desired behaviour?

 

 

Side note:

When we set GroupRenderingMode to Flat,

        GroupRenderMode="Flat"

the view stays at the bottom. The scroll indicator stays at the bottom as well, but once in a while jumps a little bit up, as if by one row, and down to the bottom again without the view changing.

At one time disabling filtering on all columns seemd to work... but later didn't.

 

 

Thanks in advance

Thorsten

Unplanned
Last Updated: 21 May 2020 09:18 by ADMIN
Created by: Lisitsa
Comments: 2
Category: GridView
Type: Feature Request
7
See this thread for more info:
http://www.telerik.com/forums/alternaterowbackground-doesn't-merged-with-rowstyle

It's  really common scenario, because a standard WPF DataGrid works like this.
Unplanned
Last Updated: 05 May 2020 08:02 by ADMIN
If in the content of RadGridView.ControlPanelItem has a binding with a RelativeSource or ElementName and the grid is placed in the collapsed UserControl, a binding error is thrown in the output window.
Completed
Last Updated: 01 May 2020 07:08 by ADMIN
Release LIB 2020.1.504 (05/04/2020)
Unplanned
Last Updated: 27 Apr 2020 08:25 by ADMIN
Add support for different merged cells orientation - MergedCellsOrientation.Mixed could be added.
Unplanned
Last Updated: 20 Apr 2020 11:44 by ADMIN
Apply sort/filter/group. Add option so that user can disable the UI update and be able to add new items, remove existing ones, change values so that UI is not updated. For example new item is on top of the sorted ones. Edite item does not change its place until sorting is reapplied/ resumed.
Completed
Last Updated: 20 Apr 2020 05:17 by ADMIN
Release LIB 2020.1.420 (04/20/2020)
Loading items in RadGridView takes too much time due to operations executed on the UI. 
Completed
Last Updated: 06 Apr 2020 08:32 by ADMIN
Release LIB 2020.1.406 (04/06/2020)

The GroupRenderMode of the RadGridVIew is set to Flat. The control is populated with items that implement the IList interface. The Count property of the custom objects needs to return value bigger than 1. So when the Delete button is pressed, the rows beneath the deleted one will also be deleted. Their number depends on the Count property of the custom object.

 


Unplanned
Last Updated: 20 Mar 2020 14:58 by ADMIN
Unplanned
Last Updated: 20 Mar 2020 14:49 by ADMIN
When using Entity Framework Core 3 an InvalidOperationException is received upon adding an AggregateFunction to a column. 
Completed
Last Updated: 19 Mar 2020 11:37 by ADMIN
Release LIB 2020.1.323 (03/23/2020)
Currently, RadGridView scrolls three rows when using the mouse wheel. There should be an API that allows developers to change this setting.
Unplanned
Last Updated: 18 Mar 2020 08:22 by ADMIN

To reproduce this:

  1. Set the GroupRenderMode of RadGridView to Flat.
  2. Page RadGridView using RadDataPager.
  3. Scroll to the last row in the view. Or scroll to any row so that few of the rows above are not longer visible.
  4. Expand the row details and scroll down more until only the parent row is visible.
  5. Collapse the row details. At this point, the vertical scrollbar disappears and the upper rows are not brought into the view as expected when the row details gets collapsed.

To work this around call the Rebind() method of RadGridView on RowDetailsVisibilityChanged event.

 

private void RadGridView_RowDetailsVisibilityChanged(object sender, Telerik.Windows.Controls.GridView.GridViewRowDetailsEventArgs e)
{
	if (e.Visibility == Visibility.Collapsed)
	{
		this.gridView.Rebind();
	}        
}

 

Unplanned
Last Updated: 02 Mar 2020 07:38 by ADMIN
When using Search as You Type behavior, the items will be first filtered using the keywords typed in the TextBox. We can create a way to disable this filtering.
1 2 3 4 5 6