(copy of Selection bug MultiColumnComboBox in UI for ASP.NET AJAX | Telerik Forums)
Steps:
2. Enter "ha" select some records
3. Hover mouse over any of dropdown records
4. Click out of the dropdown to close it
5. Textbox keeps "ha" but the message below reads that You have selected Thomas Hardy whose ID is AROUT. They are a Sales Representative at Around the Horn however, nothing has been selected.
Is it expected ?
If it's a bug and having a long cycle to fixing bugs could you recommend any workaround?
When search dropdown is open in MultiColumnComboBox and you scroll the page (e.g. by mouse wheel) the dropdown is immediately closed which is quite inconvenient.
Both Combobox and DropDownList keep the dropdown opened when you are scrolling the page.
Could you fix it?
Any temp workaround?
Code to replicate the issue:
<telerik:RadMultiColumnComboBox ID="RadMultiColumnComboBox1" runat="server">
</telerik:RadMultiColumnComboBox>
<telerik:RadToolTip runat="server" ID="RadToolTip2" Title="Company Short Name" TargetControlID="RadMultiColumnComboBox1" ShowEvent="OnFocus" Width="200px" Position="MiddleRight">
Tooltip Content
</telerik:RadToolTip>
Next, focus on the MultiColumnComboBox, but the ToolTip won't show.
Hello,
Load on demand feature is requested in multicolumn combobox
Thanks,
Milind Shevade
Currently, the RadMultiColumnComboBox has smaller height than the AutoCompleteBox or the RadComboBox for example.
A possible workaround can be using the following styles:
<style>
.RadMultiColumnComboBox .k-dropdown-wrap {
padding: 4px 12px;
}
.RadMultiColumnComboBox .k-select {
width: 1.42857143em;
height: 1.42857143em;
position: absolute;
box-sizing: content-box;
top: 0;
bottom: 0;
right: 0;
left: auto;
padding: 6px;
}
</style>
When items with different values have the same text, a postback is not triggered when selecting another item with the same text as the current selection. The workaround is to place the following script under the ScriptManager:
Telerik.Web.UI.RadMultiColumnComboBox.prototype._shouldPostbackOnChange = function myfunction() {
return true;
}
Reproduction code:
<telerik:RadMultiColumnComboBox ID="RadMultiColumnComboBox1" DataKeyNames="Additional" runat="server" DropDownWidth="Auto" AutoPostBack="true" >
<ClientEvents OnSelect="OnSelect" />
<ColumnsCollection>
<%--<telerik:MultiColumnComboBoxColumn Field="ID"></telerik:MultiColumnComboBoxColumn>--%>
<telerik:MultiColumnComboBoxColumn Field="Name"></telerik:MultiColumnComboBoxColumn>
<telerik:MultiColumnComboBoxColumn Field="Additional"></telerik:MultiColumnComboBoxColumn>
</ColumnsCollection>
</telerik:RadMultiColumnComboBox>
<script>
function OnSelect(sender, args) {
//alert("selection changed");
}
// Workaround
Telerik.Web.UI.RadMultiColumnComboBox.prototype._shouldPostbackOnChange = function myfunction() {
return true;
}
</script>
public class MyClass
{
public int ID { get; set; }
public string Name { get; set; }
public string Additional { get; set; }
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
RadMultiColumnComboBox1.DataSource = Enumerable.Range(1, 20).Select(x => new MyClass()
{
ID = x,
Name = "Same Item text" ,
Additional = "DataKey#" + x
});
RadMultiColumnComboBox1.DataTextField = "Name";
RadMultiColumnComboBox1.DataValueField = "ID";
RadMultiColumnComboBox1.DataBind();
}
}
Currently, the only example for setting up virtualization is with .svc service.