Approved
Last Updated: 12 Nov 2018 13:04 by ADMIN

Hi guys,

I am investigating a weird scrolling behavior in our app, I have more or less reproduced it in the attached sample app. I say 'more or less' because the little sample doesn't exactly have the same structure as our app but the result looks to be the same as what is happening in our software.

When declaring an unnamed style that targets the RadTileViewItem, scrolling the minimized TileViewItems while have one in the Maximized state, reverts all the minimized ones to their 'Normal' state as well as the one that was maximized. If the RadTileViewItem style is given a Key in the resource dictionary and used explicitly in the TileView's ItemContainerStyle property the scrolling works fine.

Both ways of using the style should, in my opinion, behave exactly the same.

Please take a look.

Thanks.

 

Completed
Last Updated: 12 Feb 2018 14:04 by ADMIN
Reproduced with Implicit Styles with NoXAML binaries only. The workaround is to set a fixed value for the RestoredHeight property of RadTileViewItem
Completed
Last Updated: 22 Dec 2017 14:26 by ADMIN
You can work this around by setting the PreservePositionWhenMaximized to False and implement custom preserving logic. You can see this approach in the attached project.

private bool isManualPositionChanged = false;
private Dictionary<RadTileViewItem, int> maximizedItemPositionCache = new Dictionary<RadTileViewItem, int>();

public MainWindow()
{
	InitializeComponent();
	this.xTileView.PreviewTileStateChanged += XTileView_PreviewTileStateChanged;
}

private void XTileView_PreviewTileStateChanged(object sender, Telerik.Windows.Controls.PreviewTileStateChangedEventArgs e)
{
	if (this.isManualPositionChanged)
            {
                return;
            }

            RadTileViewItem tileViewItem = (RadTileViewItem)e.OriginalSource;
            var header = tileViewItem.Header;
            TileViewItemState oldState = e.TileState;
            TileViewItemState newState = tileViewItem.TileState;

            if (newState == TileViewItemState.Minimized || newState == TileViewItemState.Restored)
            {
                if (maximizedItemPositionCache.ContainsKey(tileViewItem))
                {
                    this.isManualPositionChanged = true;
                    tileViewItem.Position = maximizedItemPositionCache[tileViewItem];
                    this.isManualPositionChanged = false;
                    maximizedItemPositionCache.Remove(tileViewItem);
                }
                if (newState == TileViewItemState.Restored)
                {
                    this.isManualPositionChanged = true;
                    var tileView = sender as RadTileView;
                    foreach (RadTileViewItem item in tileView.Items)
                    {
                        if (item.TileState == TileViewItemState.Maximized)
                        {
                            item.TileState = TileViewItemState.Restored;
                        }
                    }
                    this.isManualPositionChanged = false;
                }
            }
            else if (newState == TileViewItemState.Maximized)
            {
                if (!maximizedItemPositionCache.ContainsKey(tileViewItem))
                {
                    maximizedItemPositionCache[tileViewItem] = tileViewItem.Position;
                }
            }
}
Completed
Last Updated: 25 Aug 2017 12:40 by ADMIN
Workaround:
Create a custom style which target type is set to TileViewItemHeader and set it to the HeaderStyle property of the TileView. Then in the custom style, set a custom DataTemplate to the HeaderTemplate property. In this template specify a TextBlock and set its Margin property for instance.

Available in R3 2017 Official Release Version.
Approved
Last Updated: 30 Jan 2017 07:45 by ADMIN
The values are switched. 

NewState holds the value of OldState. 
OldState holds the value of NewState 
Approved
Last Updated: 05 Jan 2017 07:59 by ADMIN
ADMIN
Created by: Telerik Admin
Comments: 0
Category: TileView
Type: Bug Report
1
Allow users to dynamically change the DraggingItem
Approved
Last Updated: 05 Jan 2017 07:59 by ADMIN
TextBox (or input control) is in LargeContent of  FluidContentControl in RadTileViewItem. Validation fails and Red border is shown on the TextBox. TileState is changed then it is Maximized again. Validation fails again but no red border is shown.
Approved
Last Updated: 05 Jan 2017 07:59 by ADMIN
ADMIN
Created by: Telerik Admin
Comments: 0
Category: TileView
Type: Bug Report
5
Add deferred scrolling support
Approved
Last Updated: 05 Jan 2017 07:59 by ADMIN
InvalidOperationException in thrown in design time in certain situations
Approved
Last Updated: 05 Jan 2017 07:59 by ADMIN
The Header of the TileViewItems is bound only for the first X tiles, where X is the loadsize of the VirtualQueryableCollectionView
Approved
Last Updated: 05 Jan 2017 07:59 by ADMIN
Implement command support for events like TileStateChanged. Allow sending the TileItem, which state is changing, as an argument.
Approved
Last Updated: 05 Jan 2017 07:59 by Scott
ADMIN
Created by: Telerik Admin
Comments: 1
Category: TileView
Type: Bug Report
4
Design time error occurs when setting MinimizedRowHeight
Approved
Last Updated: 05 Jan 2017 07:59 by ADMIN
Both events must be raised only once per item. Also, the event arguments of each event must contain a reference to the item that begins/ends its layout change.
Approved
Last Updated: 05 Jan 2017 07:59 by Murray
ADMIN
Created by: Telerik Admin
Comments: 2
Category: TileView
Type: Bug Report
16
Allow users to resize the tiles. Possibly by dragging a left-mouse cursor on the edges of the tiles. This will give flexiblity beyond the 3 fixed size of minimized, maximized, and restored.
Approved
Last Updated: 05 Jan 2017 07:59 by Louis
DragAndDrop doesn't work in RadTileView on Mac OS with elevated trust and out of browser application
Approved
Last Updated: 04 Jan 2017 07:34 by ADMIN
When you add RadBook as a content of RadTileViewItem and reorder the TileViewItem you get ArgumentOutOfRangeException.

Workaround: You can set the width of the RadBook.
Approved
Last Updated: 04 Jan 2017 07:15 by ADMIN
In application with heavier styles and a slower machine when items are dragged and swiped it sometimes leads to exception:
Cannot animate the 'VerticalOffset' property on a 'Telerik.Windows.Controls.TileViewPanel' using a 'System.Windows.Media.Animation.DoubleAnimationUsingKeyFrames'
Approved
Last Updated: 03 Jan 2017 21:20 by ADMIN
When we have enough items so that the vertical scroll bar is displayed and then remove such amount of items so that they have enough space to fit in their container (and scrollbar is not needed) the vertical scrollbar is still visible.
1 2