Completed
Last Updated: 08 Jan 2015 09:57 by ADMIN
To reproduce:

Add 2 TileGroupElements to a RadPanorama. Set the rowcount of the first to 2 and to the second one to 1. Add a tile to the first group and set its rowspan to 2. Start the application drag the tile, you will see exception.

Workaround:
Create a custom TileDragDropService:

public class MyTileDragDropService : TileDragDropService
{
    private Action<TileGroupElement, RadTileElement, int> OffsetTiles;
    private RadPanoramaElement Owner;

    public MyTileDragDropService(RadPanoramaElement owner)
        : base(owner)
    {
        this.Owner = (RadPanoramaElement)typeof(TileDragDropService).GetField("owner", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(this);
        MethodInfo matchedMethod = null;

        foreach (MethodInfo method in typeof(TileDragDropService).GetMethods(BindingFlags.Instance | BindingFlags.NonPublic))
        {
            if (method.Name == "OffsetTiles" && method.GetParameters().Length == 3)
            {
                matchedMethod = method;
                break;
            }
        }

        this.OffsetTiles = (Action<TileGroupElement, RadTileElement, int>)matchedMethod.CreateDelegate(typeof(Action<TileGroupElement, RadTileElement, int>), this);
    }

    protected override void HandleGroupedDragDrop(RadDropEventArgs e)
    {
        RadTileElement target = e.HitTarget as RadTileElement;
        RadTileElement source = this.Context as RadTileElement;
        Point dropLocation = e.DropLocation;

        if (target != null)
        {
            dropLocation = target.PointToControl(dropLocation);
        }

        TileGroupElement @group = GetTargetGroup(new RectangleF(dropLocation, source.Size));
        if (source == null || @group == null)
        {
            return;
        }

        Point targetCell = GetTargetCell(@group, dropLocation);
        if (targetCell.X == -1)
        {
            return;
        }

        targetCell.X = Math.Abs(Math.Min(targetCell.X, @group.RowsCount - source.RowSpan));
        if (targetCell.X >= @group.RowsCount)
        {
            targetCell.X = @group.RowsCount - 1;
        }

        source.Row = targetCell.X;
        source.Column = targetCell.Y;

        if (!@group.Items.Contains(source))
        {
            (source.Parent.Parent as TileGroupElement).Items.Remove(source);
            @group.Items.Add(source);
        }

        int oldColSpan = source.ColSpan;
        source.ColSpan = 0;

        this.OffsetTiles(@group, source, oldColSpan);

        source.ColSpan = oldColSpan;
        source.Column -= oldColSpan;

        this.Owner.InvalidateMeasure(true);
        this.Owner.UpdateLayout();

        return;
    }
}

And set it to the panorama:
panorama.PanoramaElement.DragDropService = new MyTileDragDropService();
Completed
Last Updated: 10 Nov 2014 09:15 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 0
Category: Panorama
Type: Bug Report
0

			
Completed
Last Updated: 30 Aug 2012 03:09 by ADMIN
If you add 10 tiles in 2 columns of 5 tiles and run the project, you will see that the tiles are not correctly positioned. This happens only if AutoArrangeNewTiles is true.
Completed
Last Updated: 27 Feb 2012 05:01 by ADMIN
ADMIN
Created by: Boryana
Comments: 0
Category: Panorama
Type: Bug Report
0
Adding a tile with ColSpan property set to greater than 1 raises exception
Approved
Last Updated: 15 Aug 2017 10:02 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 0
Category: Panorama
Type: Feature Request
0
It would be nice if the user is allowed to edit the tiles.
Completed
Last Updated: 16 Sep 2015 07:36 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 0
Category: Panorama
Type: Bug Report
0
To reproduce:

public Form1()
{
    InitializeComponent();

    this.radPanorama1.RowsCount = 5;
    this.radPanorama1.ColumnsCount = 1;
    this.radSpinEditor1.DataBindings.Add("Value", this.radPanorama1, "RowsCount", true, DataSourceUpdateMode.OnPropertyChanged);

    for (int i = 0; i < 5; i++)
	{
        RadTileElement tile = new RadTileElement();
        tile.Text = "Tile" + (i );
        tile.Row = i ;
        this.radPanorama1.Items.Add(tile);
	}        
}


Please refer to the sample video: http://screencast.com/t/lncUvh0vIRKN 

Workaround:

 private void radPanorama1_PropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            if (e.PropertyName=="RowsCount")
            {
                this.radPanorama1.PanoramaElement.InvalidateMeasure(true);
            }
        }
Completed
Last Updated: 19 Oct 2015 14:07 by ADMIN
To reproduce:

1.Open Demo Hub example and maximize the form.
2.Start dragging "Maginifier" tile.
3. Try to drop it to the last group. You will notice that horizontal scrollbar does not move when the form is maximized. However, it behaves as expected if the form is not maximized.

Workaround:
public Form1()
{
    InitializeComponent();

    this.radPanorama1.PanoramaElement.DragDropService = new CustomService(this.radPanorama1.PanoramaElement);
}

public class CustomService : TileDragDropService
{
    public RadPanoramaElement OwnerElement { get; set; }

    public CustomService(RadPanoramaElement owner) : base(owner)
    {
        OwnerElement = owner;
    }

    public int ScrollStep
    { 
        get
        {
            return (int)typeof(TileDragDropService).GetField("scrollStep",
                System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).GetValue(this);
        }
        set
        {
            typeof(TileDragDropService).GetField("scrollStep",
                System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).SetValue(this, value);
        }
    }

    protected override void HandleMouseMove(Point mousePos)
    {
        Point clientPoint = OwnerElement.PointFromScreen(mousePos);
        Timer scrollTimer = typeof(TileDragDropService).GetField("scrollTimer",
            System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).GetValue(this) as Timer;
        if (clientPoint.X > this.OwnerElement.Size.Width - 5)
        {
            ScrollStep = (clientPoint.X - this.OwnerElement.Size.Width) + 5;
            if (!scrollTimer.Enabled)
            {
                scrollTimer.Start();
            }
        }
        else if (clientPoint.X < 5)
        {
            ScrollStep = clientPoint.X - 5;
            if (!scrollTimer.Enabled)
            {
                scrollTimer.Start();
            }
        }
        else
        {
            base.HandleMouseMove(mousePos);
        }
    }
}
Completed
Last Updated: 26 Jan 2016 11:16 by ADMIN
Approved
Last Updated: 30 Mar 2016 09:40 by ADMIN
To reproduce:

1. Add a RadPanorama with several tiles at design time.
2. Open the RadItem Collection Editor and try to reorder the items by using the arrows. Press OK. As a result, the tiles in the form are not ordered as expected although the order in the Collection Editor is the desired one.

Workaround: add the tiles at run-time in the correct order.
Completed
Last Updated: 02 Feb 2018 10:59 by Dimitar
Workaround: use the attached theme
https://docs.telerik.com/devtools/winforms/themes/using-custom-themes
1 2