Completed
Last Updated: 04 Dec 2014 14:37 by kultman
To reproduce: use the following code snippet:

DataTable dt = new DataTable();
dt.Columns.Add("Id", typeof(int));
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("IsActive", typeof(bool));

for (int i = 0; i < 20; i++)
{
    if (i % 5 == 0)
    {
        dt.Rows.Add(i, "Item" + i, true);
    }
    {
        dt.Rows.Add(i, "Item" + i, DBNull.Value);
    }
}

this.radGridView1.DataSource = dt;
this.radGridView1.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill;
this.radGridView1.EnableFiltering = true;


Try to filter by "Name" column via entering "4". As a result an InvalidCastException occurs.

Workaround: initialize default value for the cells belonging to GridViewCheckBoxColumn with false if  it is DBNull:

foreach (GridViewRowInfo r in this.radGridView1.Rows)
            {
                if (r.Cells["IsActive"].Value == DBNull.Value)
                {
                    r.Cells["IsActive"].Value = false;
                }
            }
Completed
Last Updated: 18 Nov 2014 11:26 by ADMIN
To reproduce:

Populate a RadGridView with the following data:

DataTable vMain = new DataTable("Details");
vMain.Columns.Add("OutServiceDateGuid", typeof(Guid));
vMain.Columns.Add("預估金額", typeof(string));
vMain.Columns.Add("織造", typeof(bool));
vMain.Columns.Add("狀態", typeof(string));
vMain.Columns.Add("委託廠商", typeof(string));       
vMain.Columns.Add("工服單", typeof(string));
vMain.Columns.Add("申請日", typeof(DateTime));
for (int i = 0; i < 40; i++)
{
    vMain.Rows.Add("50ED1E91-868C-42AC-9CA9-00A56F78C3" + i.ToString("0#") ,i.ToString(), true,"", "中心", "103LMH4"+i.ToString(), "2014-10-24 13:04:16.367"); 
}

radGridView1.DataSource = vMain;
radGridView1.Columns["OutServiceDateGuid"].IsVisible = false;    
radGridView1.Columns["申請日"].FormatString = "{0:yyyy/MM/dd}";
radGridView1.Columns["預估金額"].FormatString = "{0:C}";
radGridView1.Columns["狀態"].MaxWidth = 70;
//  this.radGridView1.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill;
//this.radGridView1.BestFitColumns(BestFitColumnMode.AllCells);
//  this.radGridView1.MasterTemplate.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill;
DataTable vWoven = new DataTable("vWoven");
vWoven.Columns.Add("OutServiceDateGuid", typeof(Guid));
vWoven.Columns.Add("NameOrColor", typeof(string));
vWoven.Columns.Add("Qty", typeof(string));
vWoven.Columns.Add("QtyUnitName", typeof(string));
vWoven.Columns.Add("Weight", typeof(string));
vWoven.Columns.Add("SumPrice", typeof(string));
for (int i = 0; i < 40; i++)
{
    vWoven.Rows.Add("50ED1E91-868C-42AC-9CA9-00A56F78C3" + (i + 1).ToString("0#"), " vWoven中心" + i.ToString(), i, i, i);
}

GridViewTemplate template1 = new GridViewTemplate();
template1.Caption = "織造";
template1.DataSource = vWoven;
template1.Columns["OutServiceDateGuid"].IsVisible = false;
template1.Columns["NameOrColor"].HeaderText = "成品名與規格";
template1.Columns["Qty"].HeaderText = "數量";
template1.Columns["QtyUnitName"].HeaderText = "單位";
template1.Columns["Weight"].HeaderText = "重量";
template1.Columns["SumPrice"].HeaderText = "金額";
//template1.BestFitColumns(BestFitColumnMode.AllCells);
template1.AllowRowResize = false;
template1.ShowColumnHeaders = true;
template1.ShowRowHeaderColumn = true;
template1.AllowAddNewRow = false;
template1.AllowDeleteRow = false;
template1.AllowDragToGroup = false;
this.radGridView1.Templates.Add(template1);

GridViewRelation relation1 = new GridViewRelation(this.radGridView1.MasterTemplate);
relation1.ChildTemplate = template1;
relation1.ParentColumnNames.Add("OutServiceDateGuid");
relation1.ChildColumnNames.Add("OutServiceDateGuid");
this.radGridView1.Relations.Add(relation1);

DataTable vDye = new DataTable("vDye");
vDye.Columns.Add("OutServiceDateGuid", typeof(Guid));
vDye.Columns.Add("NameOrColor", typeof(string));
vDye.Columns.Add("ColorNo", typeof(string));       
vDye.Columns.Add("Qty", typeof(string));
vDye.Columns.Add("QtyUnitName", typeof(string));
vDye.Columns.Add("Weight", typeof(string));
vDye.Columns.Add("SumPrice", typeof(string));
for (int i = 0; i < 20; i++)
{
    vDye.Rows.Add("50ED1E91-868C-42AC-9CA9-00A56F78C3" + (i + 1).ToString("0#"), " vDye中心" + i.ToString(),"", i, i, i);
}

GridViewTemplate template2 = new GridViewTemplate();
template2.Caption = "染整";
template2.DataSource = vDye;
template2.Columns["OutServiceDateGuid"].IsVisible = false;

template2.Columns["NameOrColor"].HeaderText = "顏色";
template2.Columns["ColorNo"].HeaderText = "色號";
template2.Columns["Qty"].HeaderText = "數量";
template2.Columns["QtyUnitName"].HeaderText = "單位";
template2.Columns["Weight"].HeaderText = "重量";
template2.Columns["SumPrice"].HeaderText = "金額";
//template2.BestFitColumns(BestFitColumnMode.AllCells);
template2.AllowAddNewRow = false;
template2.AllowRowResize = false;
template2.ShowColumnHeaders = true;
template2.ShowRowHeaderColumn = true;
template2.AllowDeleteRow = false;
template2.AllowDragToGroup = false;
this.radGridView1.Templates.Add(template2);

GridViewRelation relation2 = new GridViewRelation(this.radGridView1.MasterTemplate);
relation2.ChildTemplate = template2;
relation2.ParentColumnNames.Add("OutServiceDateGuid");
relation2.ChildColumnNames.Add("OutServiceDateGuid");
this.radGridView1.Relations.Add(relation2);

DataTable vAppoint = new DataTable("vAppoint");
vAppoint.Columns.Add("OutServiceDateGuid", typeof(Guid));
vAppoint.Columns.Add("NameOrColor", typeof(string));
vAppoint.Columns.Add("Qty", typeof(string));
vAppoint.Columns.Add("QtyUnitName", typeof(string));
vAppoint.Columns.Add("Weight", typeof(string));
vAppoint.Columns.Add("SumPrice", typeof(string));
for (int i = 0; i < 20; i++)
{
    vAppoint.Rows.Add("50ED1E91-868C-42AC-9CA9-00A56F78C3" + (i + 2).ToString("0#"), "vAppoint中心" + i.ToString(), i, i, i);
}
GridViewTemplate template3 = new GridViewTemplate();
template3.Caption = "委外";
template3.DataSource = vAppoint;
template3.Columns["OutServiceDateGuid"].IsVisible = false;

template3.Columns["NameOrColor"].HeaderText = "委外內容";
template3.Columns["SumPrice"].HeaderText = "金額";
//template3.BestFitColumns(BestFitColumnMode.AllCells);
template3.AllowAddNewRow = false;
template3.AllowRowResize = false;
template3.ShowColumnHeaders = true;
template3.ShowRowHeaderColumn = true;
template3.AllowDeleteRow = false;
template3.AllowDragToGroup = false;
this.radGridView1.Templates.Add(template3);

GridViewRelation relation3 = new GridViewRelation(this.radGridView1.MasterTemplate);
relation3.ChildTemplate = template3;
relation3.ParentColumnNames.Add("OutServiceDateGuid");
relation3.ChildColumnNames.Add("OutServiceDateGuid");
this.radGridView1.Relations.Add(relation3);


DataTable vMembrane = new DataTable("vMembrane");
vMembrane.Columns.Add("OutServiceDateGuid", typeof(Guid));
vMembrane.Columns.Add("NameOrColor", typeof(string));
vMembrane.Columns.Add("Qty", typeof(string));
vMembrane.Columns.Add("QtyUnitName", typeof(string));
vMembrane.Columns.Add("Weight", typeof(string));
vMembrane.Columns.Add("SumPrice", typeof(string));
//for (int i = 0; i < 40; i++)
//{
//    vMembrane.Rows.Add("50ED1E91-868C-42AC-9CA9-00A56F78C3" + (i + 3).ToString("0#"), "vMembrane中心" + i.ToString(), i, i, i);
//}

GridViewTemplate template4 = new GridViewTemplate();
template4.Caption = "膜";
template4.DataSource = vMembrane;
template4.Columns["OutServiceDateGuid"].IsVisible = false;

template4.Columns["NameOrColor"].HeaderText = "成品規格";
template4.Columns["Qty"].HeaderText = "數量";
template4.Columns["QtyUnitName"].HeaderText = "單位";
template4.Columns["SumPrice"].HeaderText = "金額";
//template4.BestFitColumns(BestFitColumnMode.AllCells);
template4.AllowAddNewRow = false;
template4.AllowRowResize = false;
template4.ShowColumnHeaders = true;
template4.ShowRowHeaderColumn = true;
template4.AllowDeleteRow = false;
template4.AllowDragToGroup = false;
this.radGridView1.Templates.Add(template4);

GridViewRelation relation4 = new GridViewRelation(this.radGridView1.MasterTemplate);
relation4.ChildTemplate = template4;
relation4.ParentColumnNames.Add("OutServiceDateGuid");
relation4.ChildColumnNames.Add("OutServiceDateGuid");
this.radGridView1.Relations.Add(relation4);

DataTable vCheck = new DataTable("vCheck");
vCheck.Columns.Add("OutServiceDateGuid", typeof(Guid));
vCheck.Columns.Add("NameOrColor", typeof(string));
vCheck.Columns.Add("Qty", typeof(string));
vCheck.Columns.Add("QtyUnitName", typeof(string));
vCheck.Columns.Add("Weight", typeof(string));
vCheck.Columns.Add("SumPrice", typeof(string));
vCheck.Columns.Add("CheckItem", typeof(string));
//for (int i = 0; i <10; i++)
//{
//    vCheck.Rows.Add("50ED1E91-868C-42AC-9CA9-00A56F78C3" + (i + 4).ToString("0#"), "中心" + i.ToString(), i, i, i);
//}

GridViewTemplate template5 = new GridViewTemplate();
template5.Caption = "檢測";
template5.DataSource = vCheck;

template5.Columns["OutServiceDateGuid"].IsVisible = false;

template5.Columns["NameOrColor"].HeaderText = "樣品名稱與規格";
template5.Columns["CheckItem"].HeaderText = "檢驗項目";
template5.Columns["CheckItem"].WrapText = true;
template5.Columns["Qty"].HeaderText = "數量";
template5.Columns["QtyUnitName"].HeaderText = "單位";
template5.Columns["SumPrice"].HeaderText = "金額";
//template5.BestFitColumns(BestFitColumnMode.AllCells);
template5.AllowAddNewRow = false;
template5.AllowRowResize = false;
template5.ShowColumnHeaders = true;
template5.ShowRowHeaderColumn = true;
template5.AllowDeleteRow = false;
template5.AllowDragToGroup = false;

this.radGridView1.Templates.Add(template5);

GridViewRelation relation5 = new GridViewRelation(this.radGridView1.MasterTemplate);
relation5.ChildTemplate = template5;
relation5.ParentColumnNames.Add("OutServiceDateGuid");
relation5.ChildColumnNames.Add("OutServiceDateGuid");
this.radGridView1.Relations.Add(relation5);

Open the application and scroll the grid a bit, you will see that any newly layouted cell will be on the most left corner.

Workaround:

Use the following code after populating the grid with data:

this.radGridView1.Columns[3].Width += 5;
this.radGridView1.Columns[3].Width -= 5;

Declined
Last Updated: 15 Oct 2015 11:04 by ADMIN
To reproduce: 
1. Add GridView which inherits the RadGridView
2. Populate the grid with some data
3. Add conditional formatting and set RowBackColor and CellBackColor 
4. Subscribe to RowFormatting event and change the font of selected row: 
void radGridView2_RowFormatting(object sender, RowFormattingEventArgs e)
{
    if (e.RowElement.IsSelected)
    {
        e.RowElement.Font = new Font(this.Font.FontFamily, this.Font.Size + 2, FontStyle.Bold);
    }
    else
    {
        e.RowElement.ResetValue(LightVisualElement.FontProperty, ValueResetFlags.Local);
        //e.RowElement.Font = this.Font;
    }
}

5. Select row with conditional formatting. The font of selected row is bold which is correct. Select another row and you will see that the previous row is still bold.

Workaround: 
Subscribe to CellFormatting event instead RowFormatting
void radGridView2_CellFormatting(object sender, CellFormattingEventArgs e)
{
    if (e.Row.IsSelected)
    {
        e.CellElement.Font = new Font(this.Font.FontFamily, this.Font.Size + 2, FontStyle.Bold);
    }
    else
    {
        e.CellElement.ResetValue(LightVisualElement.FontProperty, ValueResetFlags.Local);
    }
}
Completed
Last Updated: 28 Nov 2014 06:27 by ADMIN
Workaround:

RadDragDropService dragDropService;
int scrollValue = 0;

public Form1()
{
    InitializeComponent();

    dragDropService = this.leftGrid.GridViewElement.GetService<RadDragDropService>();
    dragDropService.Started += dragDropService_Started;
    leftGrid.TableElement.VScrollBar.ValueChanged += VScrollBar_ValueChanged;
}

private void dragDropService_Started(object sender, EventArgs e)
{
    scrollValue = this.leftGrid.TableElement.VScrollBar.Value;
}

private void VScrollBar_ValueChanged(object sender, EventArgs e)
{
    if (dragDropService != null && dragDropService.State == RadServiceState.Working)
    {
        this.leftGrid.TableElement.VScrollBar.Value = scrollValue; 
    }
}

Resolution: 
Added AllowAutoScrollColumnsWhileDragging and AllowAutoScrollRowsWhileDragging properties of RadGridViewDragDropService: 

RadGridViewDragDropService svc = this.GridViewElement.GetService<RadGridViewDragDropService>();
svc.AllowAutoScrollColumnsWhileDragging = false;
svc.AllowAutoScrollRowsWhileDragging = false;
svc.Start(row);

Completed
Last Updated: 28 Nov 2014 08:45 by ADMIN
To reproduce:

Download the attached project, run it and try to filter the bottom grid. You will see the exception

Workaround:

Use the following custom RadGridView:

public class MyGrid : RadGridView
{
    protected override RadGridViewElement CreateGridViewElement()
    {
        return new MyGridElement();
    }
}

public class MyGridElement : RadGridViewElement
{
    protected override MasterGridViewTemplate CreateTemplate()
    {
        return new MyMasterTemplate();
    }

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

public class MyMasterTemplate : MasterGridViewTemplate
{
    private MyEventDispatcher dispatcher = new MyEventDispatcher();

    public override EventDispatcher EventDispatcher
    {
        get
        {
            return this.dispatcher;
        }
    }
}

public class MyEventDispatcher : EventDispatcher
{
    public override void RaiseEvent<T>(object eventKey, object sender, T args)
    {
        GridViewCellEventArgs cellArgs = args as GridViewCellEventArgs;
        if (cellArgs != null && cellArgs.Column == null && cellArgs.Row == null)
        {
            typeof(GridViewCellEventArgsBase)
                .GetField("column", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic)
                .SetValue(cellArgs, new GridViewTextBoxColumn());

            typeof(GridViewCellEventArgsBase)
                .GetField("row", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic)
                .SetValue(cellArgs, new GridViewDataRowInfo(null));
        }

        base.RaiseEvent<T>(eventKey, sender, args);
    }
}
Completed
Last Updated: 20 Feb 2015 13:50 by ADMIN
To reproduce use the following snippets in the CellFormatting event of the exporter:
 ThemableColor red = new ThemableColor(System.Windows.Media.Colors.Red);
 CellBorders redBorders = new CellBorders(new CellBorder(CellBorderStyle.Medium, red));            

 e.CellStyleInfo.Borders = redBorders;

or 

ThemableColor red = new ThemableColor(System.Windows.Media.Colors.Red);
CellBorders fourBorders = new CellBorders();

fourBorders.Top = new CellBorder(CellBorderStyle.Thin, red);
fourBorders.Bottom = new CellBorder(CellBorderStyle.Thin, red);
fourBorders.Right = new CellBorder(CellBorderStyle.Thin, red);
fourBorders.Left = new CellBorder(CellBorderStyle.Thin, red);

e.CellStyleInfo.Borders = fourBorders;
Completed
Last Updated: 11 May 2016 14:12 by ADMIN
Currently the Paging functionality does not support server side operations. It should be extended to support them, e.g. with EntityFramework and Telerik Data Access
Completed
Last Updated: 11 Nov 2014 09:40 by Takuma
To reproduce:
- Type &1 in a grid cell and then press enter to exit edit mode.
- Press tab for example to move to the next cell.
- Press 1 again you will notice that the digit does not appear in the cell.
Completed
Last Updated: 05 Nov 2014 13:43 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Principal
Comments: 0
Category: GridView
Type: Bug Report
0
Workaround:

private void radGridView1_CellEditorInitialized(object sender, Telerik.WinControls.UI.GridViewCellEventArgs e)
{
    GridBrowseEditor browseEditor = e.ActiveEditor as GridBrowseEditor;
    if (browseEditor!=null)
    {
        browseEditor.EditorElement.MinSize = new Size(0,18);
        GridBrowseEditorElement el = browseEditor.EditorElement as GridBrowseEditorElement;
        el.TextBoxItem.TextBoxControl.MinimumSize  = new Size(0, 13);
    }
}
Completed
Last Updated: 07 Apr 2016 12:43 by ADMIN
When scrolling to the bottom of the grid with the mouse, the last row is not lined up with the bottom of the grid. Also, when doing this, clicking on any row, leads to row jumping down to align properly, but a different row is selected.

Workaround:

public Form1()
{
    InitializeComponent();
    radGridView1.MouseDown+=radGridView1_MouseDown;
    radGridView1.MouseUp+=radGridView1_MouseUp;
}
bool scrolling = false;

private void radGridView1_MouseDown(object sender, MouseEventArgs e)
{
    ScrollBarThumb thumb = radGridView1.ElementTree.GetElementAtPoint(e.Location) as ScrollBarThumb;
    if (thumb != null)
    {
        scrolling = true;
    }
}

private void radGridView1_MouseUp(object sender, MouseEventArgs e)
{
    if (scrolling)
    {
        scrolling = false;
        int scrollBarValue = radGridView1.TableElement.VScrollBar.Value;
        radGridView1.MasterTemplate.Refresh();
        radGridView1.TableElement.VScrollBar.Value = scrollBarValue;
    }
}
Completed
Last Updated: 13 Oct 2015 10:19 by ADMIN
To reproduce: use the following code snippet and follow the steps in the attached gif file.

private void Form1_Load(object sender, EventArgs e)
{
    this.order_DetailsTableAdapter.Fill(this.nwindDataSet.Order_Details);
    this.ordersTableAdapter.Fill(this.nwindDataSet.Orders);
    radGridView1.AutoGenerateHierarchy = true;
    radGridView1.DataSource = this.nwindDataSet;
    radGridView1.DataMember = "Orders";
    radGridView1.MasterTemplate.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill;
    radGridView1.MasterTemplate.Templates.First().AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill;
    radGridView1.EnablePaging = true;

    radGridView1.MasterTemplate.Templates.First().EnableFiltering = true;
    FilterDescriptor fd = new FilterDescriptor();
    fd.PropertyName = "UnitPrice";
    fd.Operator = FilterOperator.IsGreaterThan;
    fd.Value = 40;
    radGridView1.MasterTemplate.Templates.First().FilterDescriptors.Add(fd);
    
    radGridView1.MouseDown += radGridView1_MouseDown;
}

private void radGridView1_MouseDown(object sender, MouseEventArgs e)
{
    GridDetailViewCellElement detailCell = radGridView1.ElementTree.GetElementAtPoint(e.Location) as GridDetailViewCellElement;
    if (detailCell != null)
    {
        radGridView1.MasterTemplate.Templates.First().FilterDescriptors.Clear();
    }
}


Workaround:

private void radGridView1_MouseDown(object sender, MouseEventArgs e)
{
    GridDetailViewCellElement detailCell = radGridView1.ElementTree.GetElementAtPoint(e.Location) as GridDetailViewCellElement;
    if (detailCell != null)
    {
        radGridView1.MasterTemplate.Templates.First().FilterDescriptors.Clear();
        GridViewHierarchyRowInfo hierarchyRow = (GridViewHierarchyRowInfo)((GridViewDetailsRowInfo)detailCell.RowInfo).Owner;
        hierarchyRow.IsExpanded = ! hierarchyRow.IsExpanded;
        hierarchyRow.IsExpanded = ! hierarchyRow.IsExpanded;
        hierarchyRow.ChildRows.Last().EnsureVisible();
    }
}
Completed
Last Updated: 13 Mar 2015 14:31 by ADMIN
To reproduce:
- Enable the search row in the grid.
- Enter some text in the search text box in order to mark some rows.
- Refresh the master template.
- Notice that the text is cleared, but the formatting remains.

Workaround, use the following custom cell:

      class MyGridSearchCellElement : GridSearchCellElement
        {
            public MyGridSearchCellElement(GridViewColumn column, GridRowElement row)
                :base (column, row)
            {

            }
            bool performSearch = true;
            protected override void SyncLabelText()
            {
                //base.SyncLabelText();

                GridViewSearchRowInfo searchRow = this.RowInfo as GridViewSearchRowInfo;

                if (searchRow == null)
                {
                    return;
                }

                performSearch = false;

                string searchCriteria = typeof(GridViewSearchRowInfo).GetField("searchCriteria", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(searchRow).ToString();

                if (string.IsNullOrEmpty(searchCriteria))
                {
                    this.SearchTextBox.Text = String.Empty;
                    this.SearchTextBox.SearchInfoLabel.Text = String.Empty;
                }
                else
                {
                    this.SearchTextBox.Text = searchCriteria;
                    this.SearchTextBox.SearchInfoLabel.Text = string.Format("{0} {1} {2}", searchRow.CurrentResultIndex + 1, Telerik.WinControls.UI.Localization.RadGridLocalizationProvider.CurrentProvider.GetLocalizedString(Telerik.WinControls.UI.Localization.RadGridStringId.SearchRowResultsOfLabel), searchRow.CurrentSearchResultsCount);
                }

                performSearch = true;
            }

            protected override void Search()
            {
                if (!performSearch)
                {
                    return;
                }

                base.Search();
            }
        }


To put it in action, use the CreateCell event of RadGridView:
 void radGridView1_CreateCell(object sender, GridViewCreateCellEventArgs e)
        {
            if (e.CellType == typeof( GridSearchCellElement))
            {
                e.CellElement = new MyGridSearchCellElement(e.Column, e.Row);
            }
        }
Completed
Last Updated: 20 Oct 2014 14:37 by ADMIN
To reproduce:
- Bind the grid to an ObservableCollection and set its AddNewBoundRowBeforeEdit property to true.
- Click in the new row and then click back in already added row.
Completed
Last Updated: 05 Nov 2014 14:43 by ADMIN
To reproduce: use the following code snippet:

public Form1()
{
    InitializeComponent();

    GridViewComboBoxColumn supplierColumn = new GridViewComboBoxColumn("SupplierID");
    supplierColumn.DataSource = this.suppliersBindingSource;
    supplierColumn.ValueMember = "SupplierID";
    supplierColumn.DisplayMember = "ContactName";
    supplierColumn.DropDownStyle = Telerik.WinControls.RadDropDownStyle.DropDown;
    this.radGridView1.Columns.Add(supplierColumn);

    this.radGridView1.CellEditorInitialized += radGridView1_CellEditorInitialized;
}

private void radGridView1_CellEditorInitialized(object sender, GridViewCellEventArgs e)
{
    RadDropDownListEditor editor = e.ActiveEditor as RadDropDownListEditor;
    if (editor != null)
    {
        RadDropDownListEditorElement el = editor.EditorElement as RadDropDownListEditorElement;
        el.SelectedIndexChanging -= el_SelectedIndexChanging;
        el.SelectedIndexChanging += el_SelectedIndexChanging;

        el.SelectedIndexChanged -= el_SelectedIndexChanged;
        el.SelectedIndexChanged += el_SelectedIndexChanged;
    }
}

private void el_SelectedIndexChanged(object sender, Telerik.WinControls.UI.Data.PositionChangedEventArgs e)
{
    Console.WriteLine("Changed");
}

private void el_SelectedIndexChanging(object sender, Telerik.WinControls.UI.Data.PositionChangingCancelEventArgs e)
{
    e.Cancel = true;
}

private void Form1_Load(object sender, EventArgs e)
{
    this.suppliersTableAdapter.Fill(this.nwindDataSet.Suppliers);
}

When the editor is initialized you will notice that the editor's value can be changed by using the mouse wheel no matter that the SelectedIndexChanging event is cancelled.
Completed
Last Updated: 11 Nov 2014 11:25 by Chris Ward
To reproduce:

Set these properties:

radGridView1.SelectionMode = GridViewSelectionMode.FullRowSelect;
radGridView1.MultiSelect = true;

Select a row, hold Ctrl and click the same cell which is selected, you will see that the SelectionChanging event, along with the SelectionChanged one will not be fired.

Workaround:

Use the PropertyChanging event of the rows:

this.Grid.Rows.ToList().ForEach(x => x.PropertyChanging += x_PropertyChanging);

....

void x_PropertyChanging(object sender, Telerik.WinControls.Interfaces.PropertyChangingEventArgsEx e)
{
    if (e.PropertyName == "IsSelected")
    {
    }
}
Completed
Last Updated: 11 Dec 2015 14:05 by ADMIN
To reproduce:
- Bind the grid to a binding list of custom property which has a bool value.
- Add a filter that shows only false values.
- Change some (more than one) of the underlying values to true.
- You will notice that the rows with the new value are still visible.
Completed
Last Updated: 09 Oct 2014 15:50 by ADMIN
RadDateTimeEditor the entire date cannot be selected when the editor is initialized.
Completed
Last Updated: 26 Nov 2014 11:54 by ADMIN
ADMIN
Created by: Stefan
Comments: 0
Category: GridView
Type: Feature Request
0

			
Completed
Last Updated: 27 Nov 2014 12:16 by ADMIN
Completed
Last Updated: 13 Nov 2014 08:18 by ADMIN