Hristo Merdjanov
Team Member

FIX. RadGridView - resetting the ListSource used by RadGridView should clear the pinned rows collection

How to reproduce:
public partial class Form1 : Form
{
DataTable dt;

public Form1()
{
InitializeComponent();

this.radGridView1.DataSource = this.GetData();
this.radGridView1.AutoSizeColumnsMode = Telerik.WinControls.UI.GridViewAutoSizeColumnsMode.Fill;
}

private void radButton1_Click(object sender, EventArgs e)
{
dt.Clear();
for (int i = 0; i < 100; i++)
{
dt.Rows.Add(i, "New Name " + i, DateTime.Now.AddDays(i), i % 2 == 0);
}
}

private DataTable GetData()
{
dt = new DataTable();

dt.Columns.Add("Id", typeof(int));
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Date", typeof(DateTime));
dt.Columns.Add("Bool", typeof(bool));
for (int i = 0; i < 500; i++)
{
dt.Rows.Add(i, "Name " + i, DateTime.Now.AddDays(i), i % 2 == 0);
}

return dt;
}
}

Workaround:
public partial class Form1 : Form
{
DataTable dt;

public Form1()
{
InitializeComponent();

this.radGridView1.DataSource = this.GetData();
this.radGridView1.AutoSizeColumnsMode = Telerik.WinControls.UI.GridViewAutoSizeColumnsMode.Fill;

this.radGridView1.RowsChanged += RadGridView1_RowsChanged;
}

private void RadGridView1_RowsChanged(object sender, Telerik.WinControls.UI.GridViewCollectionChangedEventArgs e)
{
if (e.Action == Telerik.WinControls.Data.NotifyCollectionChangedAction.Reset)
{
this.radGridView1.MasterView.PinnedRows.GetType().GetMethod("Clear", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic)
.Invoke(this.radGridView1.MasterView.PinnedRows, new object[] { });
}
}

private void radButton1_Click(object sender, EventArgs e)
{
dt.Clear();
for (int i = 0; i < 100; i++)
{
dt.Rows.Add(i, "New Name " + i, DateTime.Now.AddDays(i), i % 2 == 0);
}
}

private DataTable GetData()
{
dt = new DataTable();

dt.Columns.Add("Id", typeof(int));
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Date", typeof(DateTime));
dt.Columns.Add("Bool", typeof(bool));
for (int i = 0; i < 500; i++)
{
dt.Rows.Add(i, "Name " + i, DateTime.Now.AddDays(i), i % 2 == 0);
}

return dt;
}
}

Bug Report by Hristo Merdjanov Status: In Development Comments: 0 Category: RadGridView Scheduled for: R2 2017 SP1 Last update: 2017-05-26T15:59:27 by Ivan Petrov
0
Desislava Yordanova
Team Member

FIX. RadScheduler - resizing appointments in right to left mode works in reversed direction

To reproduce:
this.radScheduler1.ActiveViewType = Telerik.WinControls.UI.SchedulerViewType.Timeline;
this.radScheduler1.RightToLeft = System.Windows.Forms.RightToLeft.Yes;

Please refer to the attached gif file. Select the left border of an appointment and try to resize it to the left. You will notice that you are allowed to resize it to the right and vice versa.

Workaround: this.radScheduler1.SchedulerElement.ResizeBehavior = new MyResizingBehavior(this.radScheduler1.SchedulerElement);

public class MyResizingBehavior : AppointmentResizingBehavior
{
RadScheduler scheduler;

public MyResizingBehavior(SchedulerVisualElement activeOwner)
: base(activeOwner)
{
scheduler = activeOwner.Scheduler;
}

protected override bool UpdateMouseCursor(Point mousePosition, Rectangle nearRect, Rectangle farRect)
{
bool result = base.UpdateMouseCursor(mousePosition, nearRect, farRect);
if (scheduler.RightToLeft == RightToLeft.Yes )
{
FieldInfo leftFI = typeof(AppointmentResizingBehavior).GetField("leftResize", BindingFlags.NonPublic | BindingFlags.Instance);
FieldInfo rightFI = typeof(AppointmentResizingBehavior).GetField("rightResize", BindingFlags.NonPublic | BindingFlags.Instance);

if (nearRect.Contains(mousePosition) && scheduler.Cursor == Cursors.SizeWE)
{
leftFI.SetValue(this, false);
rightFI.SetValue(this, true);
}
else if (farRect.Contains(mousePosition) && scheduler.Cursor == Cursors.SizeWE)
{
leftFI.SetValue(this, true);
rightFI.SetValue(this, false);
}
}
return result;
}
}
Bug Report by Desislava Yordanova Status: New Comments: 0 Attachments: 2 Category: RadScheduler Scheduled for: Not Scheduled Last update: 2017-05-26T13:14:09 by Desislava Yordanova
0
Desislava Yordanova
Team Member

FIX. RadCalendar - selected cells are cleared when you click the row header to select the entire row

To reproduce: use the following code snippet:

radCalendar1.AllowMultipleSelect = true;
radCalendar1.ShowRowHeaders = true;
radCalendar1.AllowRowHeaderSelectors = true;
If you select several cells, they all are selected. Then, click the header row cell. You will notice that the cells from this row are selected but all previously selected cells are cleared. The attached gif file illustrates the behavior.

Workaround: use the MouseDown event to store the currently selected cells and then on MouseUp restore the missing selection:

public class MyCalendar : RadCalendar
{
List<DateTime> selectedDays = new List<DateTime>();

protected override void OnMouseDown(MouseEventArgs e)
{
CalendarCellElement cell = this.ElementTree.GetElementAtPoint(e.Location) as CalendarCellElement;
if (cell != null)
{
bool isHeader = (bool)cell.GetValue(CalendarCellElement.IsHeaderCellProperty);
if (isHeader)
{
selectedDays.Clear();
foreach (DateTime date in this.SelectedDates)
{
selectedDays.Add(date);
}
}
}
base.OnMouseDown(e);
}

protected override void OnMouseUp(MouseEventArgs e)
{
base.OnMouseUp(e);
foreach (DateTime date in selectedDays)
{
if (!this.SelectedDates.Contains(date))
{
this.SelectedDates.Add(date);
}
}
}

public override string ThemeClassName
{
get
{
return typeof(RadCalendar).FullName;
}
}
}
Bug Report by Desislava Yordanova Status: New Comments: 0 Attachments: 2 Category: RadCalendar Scheduled for: Not Scheduled Last update: 2017-05-26T11:23:35 by Desislava Yordanova
0
Matt Warner

Column chooser - search function

We'd like to see the ability to enable a search/filter function for column chooser. One of our applications that uses the radgridview has dozens of columns, most hidden by default. Our users would like the ability to type in part of a column name and have the column chooser filter on it.
Feature Request by Matt Warner Status: Under Review Comments: 0 Category: RadGridView Scheduled for: Not Scheduled Last update: 2017-05-26T10:46:04 by Ivan Petrov
0
Desislava Yordanova
Team Member

FIX. RadPageView - incorrect multi-line layout of the page tabs

To reproduce: please refer to the attached sample project and gif file. The purpose is to select the last added page. However, the multi-line tabs are not ordered correctly at all compared to the TabControl.
Bug Report by Desislava Yordanova Status: New Comments: 0 Attachments: 2 Category: RadPageView Scheduled for: Not Scheduled Last update: 2017-05-26T09:01:31 by Desislava Yordanova
0
Desislava Yordanova
Team Member

FIX. RadPageView - incorrect layout when a new page is added with StripViewItemFitMode.MultiLine and the new page is selected

To reproduce: please refer to the attached sample project and follow the illustarted steps in the attached gif file.
Bug Report by Desislava Yordanova Status: New Comments: 0 Attachments: 2 Category: RadPageView Scheduled for: Not Scheduled Last update: 2017-05-26T08:49:48 by Desislava Yordanova
0
Dimitar Karamfilov
Team Member

FIX. RadGridView - exception when loading the layout on Windows 7 with HDPI.

Use attached to reproduce.

Workaround:

class MyViewDefinition : TableViewDefinition
{
public override IRowView CreateViewUIElement(GridViewInfo viewInfo)
{
return new MyTableElement();
}
}
class MyTableElement : GridTableElement
{
public override void DpiScaleChanged(SizeF scaleFactor)
{
if (this.ViewTemplate != null)
{
base.DpiScaleChanged(scaleFactor);
}

}
protected override Type ThemeEffectiveType
{
get { return typeof(GridTableElement); }
}
}

//use the above definition like this:

radGridView1.ViewDefinition = new MyViewDefinition();
Bug Report by Dimitar Karamfilov Status: In Development Comments: 0 Attachments: 1 Category: RadGridView Scheduled for: R2 2017 SP1 Last update: 2017-05-26T05:17:23 by Ralitsa Kumanova
0
Desislava Yordanova
Team Member

FIX. RadScheduler - Persian text is rendered in reversed order in AppointmentElement

To reproduce:
this.radScheduler1.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
this.radScheduler1.Appointments.Add(new Appointment(DateTime.Now, TimeSpan.FromHours(2), "آقای حقیقت"));

Please refer to the attached screenshot.

Workaround:

private void radScheduler1_AppointmentFormatting(object sender, SchedulerAppointmentEventArgs e)
{
e.AppointmentElement.UseHtml = false;
}
Bug Report by Desislava Yordanova Status: Approved Comments: 1 Attachments: 1 Category: RadScheduler Scheduled for: Not Scheduled Last update: 2017-05-25T16:25:02 by arsalanelec .
0
Christine Mick

Provide new templates for UI for Winforms

I see no use for the templates that are currently provided. I'm never going to build a new Word or Outlook type application. Some templates that might be useful would be along the lines of structure for business apps. Something that would give a framework for building apps for business use.
Feature Request by Christine Mick Status: New Comments: 0 Category: Installation and general issues Scheduled for: Not Scheduled Last update: 2017-05-25T15:43:37 by Christine Mick
0
Desislava Yordanova
Team Member

ADD. RadGridView - functionality to control the sort order of the pinned rows within the pinned container

The CustomSorting event should manipulate the pinned rows as well. Thus, the user will be allowed to control the sort order of the pinned rows within the pinned container.
Feature Request by Desislava Yordanova Status: In Development Comments: 0 Category: RadGridView Scheduled for: R2 2017 SP1 Last update: 2017-05-25T13:46:39 by Ivan Petrov
0
Displaying items 1 - 10 of 1015