Declined
Last Updated: 06 Feb 2017 10:42 by ADMIN
Use attached project to reproduce.

Workarond:
radMultiColumnComboBox1.AutoSize = false;
radMultiColumnComboBox1.MinimumSize = new Size(0, 22);
Completed
Last Updated: 19 Jun 2017 12:05 by ADMIN
To reproduce: 

            DataTable dt = new DataTable();

            dt.Columns.Add("ID");
            dt.Columns.Add("Description");

            dt.Rows.Add(new object[] { "0", "Low" });
            dt.Rows.Add(new object[] { "1", "Medium" });
            dt.Rows.Add(new object[] { "2", "High" });
            radMultiColumnComboBox1.DisplayMember = "ID";
            radMultiColumnComboBox1.ValueMember = "ID";
            radMultiColumnComboBox1.DataSource = dt;
            radMultiColumnComboBox1.SelectedValue = "1";

 this.radMultiColumnComboBox1.SelectedValueChanged+=radMultiColumnComboBox1_SelectedValueChanged;

        private void radMultiColumnComboBox1_SelectedValueChanged(object sender, EventArgs e)
        {
            Console.WriteLine(this.radMultiColumnComboBox1.SelectedValue);
        }

If you type 2 in the editable part, the SelectedValue is not changed as in the previous version.

Workaround:

public class MyRadMultiColumnComboBox : RadMultiColumnComboBox
{
    public override string ThemeClassName
    {
        get
        {
            return typeof(RadMultiColumnComboBox).FullName;
        }
    }

    protected override RadMultiColumnComboBoxElement CreateMultiColumnComboBoxElement()
    {
        return new MyRadMultiColumnComboBoxElement();
    }
}

public class MyRadMultiColumnComboBoxElement : RadMultiColumnComboBoxElement
{
    protected override Type ThemeEffectiveType
    {
        get
        {
            return typeof(RadMultiColumnComboBoxElement);
        }
    }

    protected override void SetActiveItem(string text)
    {
        int rowIndex = this.FindItemIndexExact(text);

        if (rowIndex != -1)
        {
            this.EditorControl.CurrentRow = this.EditorControl.Rows[rowIndex];
            this.textBox.SelectionStart = this.textBox.Text.Length;
        }
    }
}
Approved
Last Updated: 08 Nov 2016 14:33 by ADMIN
When you enable the popup sizing functionality, the last user defined size by the sizing grip should be kept.
Completed
Last Updated: 15 Aug 2017 10:54 by ADMIN
To reproduce: please refer to the attached sample project which result is illustrated in the attached gif file. The DropDownClosed is expected to be fired when the drop down is already closed. Hence, showing a message box shouldn't keep the drop down opened. The problem is reproducible with RadDropDownList as well. Note that this problem is not applicable for MS ComboBox.

Workaround:  this.radMultiColumnComboBox1.MultiColumnComboBoxElement.DropDownAnimationEnabled = false;
Approved
Last Updated: 19 Jun 2017 11:17 by ADMIN
To reproduce:
Type "Th" into the multi-column combo box in the attached project.  Then press and hold the Backspace key until "Th" is deleted.  Then release Backspace key.  There remain only the filtered options in the dropdown.
If I press and release the backspace key 1x for each typed letter, then the dropdown repopulates as expected.

Workaround: 
 private void radMultiColumnComboBox1_TextChanged(object sender, EventArgs e)
        {
            this.radMultiColumnComboBox1.MultiColumnComboBoxElement.ApplyFilter();
        }
Completed
Last Updated: 15 Mar 2018 12:07 by Dimitar
To reproduce:

            this.radMultiColumnComboBox1.DataSource = this.customersBindingSource;
            this.radMultiColumnComboBox1.DisplayMember = "CustomerID";
            this.radMultiColumnComboBox1.AutoFilter = true;

            FilterDescriptor filter = new FilterDescriptor();
            filter.PropertyName = this.radMultiColumnComboBox1.DisplayMember;
            filter.Operator = FilterOperator.Contains;
            this.radMultiColumnComboBox1.EditorControl.MasterTemplate.FilterDescriptors.Add(filter);

1. Click the dropdown button, verify that all items list on drop down
2. Type into the textbox so only one item is left( e.g. "BERGS" )
3. While the drop-down is still opened, click the arrow button.
4. Focus another control on the form and then when the user clicks the arrow button, only one item is still shown in the drop down. 

Workaround:
        private void radMultiColumnComboBox1_DropDownClosed(object sender, RadPopupClosedEventArgs args)
        {
            this.radMultiColumnComboBox1.EditorControl.MasterTemplate.Refresh();
        }
Declined
Last Updated: 25 Jun 2018 10:37 by ADMIN
At the moment when the control receives the focus the text gets selected. if the AllowShowFocusCues property is set to true and the DropDownStyle is set to DropDownList the focus cues should be painted similarly as in RadDropDownList
this.radMultiColumnComboBox1.AllowShowFocusCues = true;
this.radMultiColumnComboBox1.DropDownStyle = Telerik.WinControls.RadDropDownStyle.DropDownList;
Approved
Last Updated: 06 May 2016 13:42 by ADMIN
To reproduce:
- Start the attached project and type a value so one item remains in the drop down.
- Press Enter - event is not fired.

Workaround:
Use the DropDownClosed event and check if the value is changed. 
Approved
Last Updated: 06 May 2016 13:43 by ADMIN
To reproduce:
- Open the attached project.
- Type a text so there are no results in the drop down.
- Press Enter.
- Click the arrow button.

Workaround: 
private void RadMultiColumnComboBox1_DropDownOpened1(object sender, EventArgs e)
{
    if (radMultiColumnComboBox1.Text == "")
    {
        radMultiColumnComboBox1.EditorControl.FilterDescriptors.Clear();
        CompositeFilterDescriptor compositeFilter = new CompositeFilterDescriptor();
        compositeFilter.FilterDescriptors.Add(new FilterDescriptor("Drug", FilterOperator.StartsWith, ""));
        compositeFilter.FilterDescriptors.Add(new FilterDescriptor("Name", FilterOperator.StartsWith, ""));
        compositeFilter.LogicalOperator = FilterLogicalOperator.Or;
        radMultiColumnComboBox1.EditorControl.FilterDescriptors.Add(compositeFilter);
    }
}
Completed
Last Updated: 19 Jul 2016 14:16 by ADMIN
To reproduce:

public Form1()
{
    InitializeComponent();

    DataTable dt = new DataTable();
    dt.Columns.Add("Id", typeof(int));
    dt.Columns.Add("Name", typeof(string));
    for (int i = 0; i < 20; i++)
    {
        dt.Rows.Add(i, "Item" + i);
    }
    this.radMultiColumnComboBox1.DataSource = dt;
    this.radMultiColumnComboBox1.DisplayMember = "Name";
    this.radMultiColumnComboBox1.ValueMember = "Id";
    this.radMultiColumnComboBox1.SelectedValueChanged += radMultiColumnComboBox1_SelectedValueChanged; 
}

private void radMultiColumnComboBox1_SelectedValueChanged(object sender, EventArgs e)
{ 
    if (this.radMultiColumnComboBox1.SelectedIndex > -1)
    {
        MessageBox.Show("Test");
    }
}

NOTE: If you use a RadMessageBox, after showing the message the first time, the popup can't be closed because InvalidOperationException is thrown.

Workaround: show the message box in the RadMultiColumnComboBox.DropDownClosed event.
Approved
Last Updated: 06 May 2016 08:49 by ADMIN
To reproduce:

DataTable dt = new DataTable();
dt.Columns.Add("Id", typeof(int));
dt.Columns.Add("Name", typeof(string));
for (int i = 0; i < 1; i++)
{
    dt.Rows.Add(i, "Item" + i);
}
this.radMultiColumnComboBox1.DataSource = dt;
this.radMultiColumnComboBox1.DisplayMember = "Name";
this.radMultiColumnComboBox1.ValueMember = "Id";

this.radMultiColumnComboBox1.AutoFilter = true;
this.radMultiColumnComboBox1.SelectedIndex = -1;

NOTE: If you add more than 1 items, the text won't be changed.

Workaround:

Public Class CustomRadMultiColumnComboBox
Inherits RadMultiColumnComboBox
    Protected Overrides Function CreateMultiColumnComboBoxElement() As RadMultiColumnComboBoxElement
        Return New CustomRadMultiColumnComboBoxElement()
    End Function

    Public Overrides Property ThemeClassName As String
        Get
            Return GetType(RadMultiColumnComboBox).FullName
        End Get
        Set(value As String)
            MyBase.ThemeClassName = value
        End Set
    End Property
End Class

Public Class CustomRadMultiColumnComboBoxElement
Inherits RadMultiColumnComboBoxElement
    Protected Overrides Sub CheckForCompleteMatchAndUpdateText()

    End Sub
    Protected Overrides ReadOnly Property ThemeEffectiveType() As Type
        Get
            Return GetType(RadMultiColumnComboBoxElement)
        End Get
    End Property
End Class
Approved
Last Updated: 04 Oct 2016 08:08 by ADMIN
To reproduce:
radMultiColumnComboBox.AutoFilter = True

Dim filter As New Telerik.WinControls.Data.FilterDescriptor()
filter.PropertyName = radMultiColumnComboBox.DisplayMember
filter.Operator = Telerik.WinControls.Data.FilterOperator.StartsWith

radMultiColumnComboBox.EditorControl.MasterTemplate.FilterDescriptors.Add(filter)
radMultiColumnComboBox.MultiColumnComboBoxElement.AutoCompleteMode = AutoCompleteMode.SuggestAppend
radMultiColumnComboBox.MultiColumnComboBoxElement.LimitToList = True

- Select an item, copy the text and then try to paste it.
Completed
Last Updated: 10 Dec 2014 11:50 by ADMIN
To reproduce:

Add a RadMultiColumnComboBox with one row. Open and close the dropdown, you will see that the scrollbars will show and hide with every openning

Workaround:

Use the following class:

public class MCCB : RadMultiColumnComboBox
{
    protected override RadMultiColumnComboBoxElement CreateMultiColumnComboBoxElement()
    {
        return new MCCBElement();
    }
}

public class MCCBElement : RadMultiColumnComboBoxElement
{
    protected override Size GetPopupSize(RadPopupControlBase popup, bool measure)
    {
        Size baseSize = base.GetPopupSize(popup, measure);

        RadScrollBarElement hScrollBarElement = this.EditorControl.TableElement.HScrollBar;
        baseSize.Height += (int)hScrollBarElement.ControlBoundingRectangle.Size.Height;

        return baseSize;
    }

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

Completed
Last Updated: 16 Nov 2015 13:39 by ADMIN
To reproduce:
- Bind the control to a binding list.
- Add and then remove items at runtime.


Workaround:
radMultiColumnComboBox1.EditorControl.BeginUpdate();

list.RemoveAt(0);

radMultiColumnComboBox1.EditorControl.EndUpdate();
Completed
Last Updated: 16 Oct 2015 12:04 by ADMIN
To reproduce:
- Ty some text so the items in the drop down are filtered.
- Directly press enter (this should select the first item in the drop down)
- The selected value is updated however the text is not.

Workaround:
Private Sub cbo_SelectedValueChanged(sender As Object, e As EventArgs) Handles RadMultiColumnComboBox1.SelectedValueChanged, RadMultiColumnComboBox2.SelectedValueChanged, RadMultiColumnComboBox3.SelectedValueChanged
    Dim cbo As RadMultiColumnComboBox = sender

    If bLoading = False AndAlso cbo.Text <> CType(cbo.SelectedItem, Telerik.WinControls.UI.GridViewDataRowInfo).Cells(cbo.DisplayMember).Value Then
        cbo.Text = CType(cbo.SelectedItem, Telerik.WinControls.UI.GridViewDataRowInfo).Cells(cbo.DisplayMember).Value
    End If
End Sub
Approved
Last Updated: 06 Apr 2016 15:27 by ADMIN
To reproduce:
- The attached video shows how you can reproduce the issue

Note - you should type fast in the drop down and the size is invalid only the firs time.

Workaround:
RadMultiColumnComboBox1.MultiColumnComboBoxElement.DropDownAnimationEnabled = False
Approved
Last Updated: 30 Mar 2016 09:31 by ADMIN
To reproduce:
 public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            Random r = new Random();
            DataTable table = new DataTable();
            table.Columns.Add("ID", typeof(int));
            table.Columns.Add("Name", typeof(string));

            for (int i = 0; i < 10; i++)
            {
                table.Rows.Add(i, "Row with longer value " + i);
            }

            radMultiColumnComboBox1.DropDownOpening += radMultiColumnComboBox1_DropDownOpening;
            radMultiColumnComboBox1.AutoSizeDropDownToBestFit = true;
            radMultiColumnComboBox1.DataSource = table;
        }

        void radMultiColumnComboBox1_DropDownOpening(object sender, CancelEventArgs args)
        {
         //  radMultiColumnComboBox1.BestFitColumns();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Random r = new Random();
            DataTable table = new DataTable();
            table.Columns.Add("ID", typeof(int));
            table.Columns.Add("Name", typeof(string));

            for (int i = 0; i < 10; i++)
            {
                table.Rows.Add(i, "Row " + i);
            }

            radMultiColumnComboBox1.DataSource = table;

        }
    }

WORKAROUND: call the BestFitColumns method in the DropDownOpening event
Completed
Last Updated: 20 Nov 2014 15:21 by ADMIN
To reproduce:

Add a RadMultiColumnComboBox fill it with data and set the following settings:

comboBoxColumnElement.EditorControl.AutoSizeRows = true;
comboBoxColumnElement.EditorControl.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill;
comboBoxColumnElement.EditorControl.MasterTemplate.AutoGenerateColumns = false;
comboBoxColumnElement.EditorControl.ShowRowHeaderColumn = false;
comboBoxColumnElement.EditorControl.ShowFilteringRow = false;

comboBoxColumnElement.AutoSize = true;
comboBoxColumnElement.AutoFilter = true;
comboBoxColumnElement.AutoSizeMode = Telerik.WinControls.RadAutoSizeMode.FitToAvailableSize;
comboBoxColumnElement.AutoSizeDropDownToBestFit = true;
comboBoxColumnElement.DropDownMinSize = new Size(420, 150);
comboBoxColumnElement.DropDownSizingMode = SizingMode.UpDownAndRightBottom;



When you open the dropdown you will notice that one time the scrollbar will be on the bottom and the next time it will be on the top and so on.

Workaround:

comboBoxColumnElement.PopupOpened += Popup_Opened;....

Timer timer = new Timer();

private void Popup_Opened(object sender, EventArgs e)

{
timer.Tick += Tick;
timer.Interval = 20;
timer.Start();

}

private void Tick(object sender, EventArgs e)
{
comboBoxColumnElement.EditorControl.TableElement.ScrollToRow(comboBoxColumnElement.EditorControl.SelectedRows(0));

        timer.Stop();

}


Completed
Last Updated: 29 Jan 2015 12:46 by ADMIN
To reproduce: 

1. Add a RadMultiColumnComboBox and set up filtering.
2. Start typing in order to filter all the rows.
3. Click somewhere. As a result the RadMultiColumnComboBox will loose focus.

If you try to get the SelectedIndex or SelectedValue you will notice that the first row in the popup grid is current. It is expected to have no selected row as the entered text does not match any row.

Workaround:

 public class CustomRadMultiColumnComboBox : RadMultiColumnComboBox
        {
            protected override void OnLostFocus(EventArgs e)
            {
                int currentIndex = this.SelectedIndex;
                base.OnLostFocus(e);
                this.SelectedIndex = currentIndex;
            }

            public override string ThemeClassName  
            { 
                get 
                { 
                    return typeof(RadMultiColumnComboBox).FullName;  
                }
            }
        }