Hello Alex latty,
Thank you for getting back to me. Actually, after further investigation, I determined that there is no straightforward way to use the
AutoFilter functionality on a column which does not contain text data. However, I can suggest using
CustomFiltering to accomplish such a requirement. Please, consider the following code:
void
SetUpCustomFiltering()
{
//.......
this
.radMultiColumnComboBox1.DisplayMember =
"Uint_Value"
;
this
.radMultiColumnComboBox1.AutoFilter =
true
;
radMultiColumnComboBox1.EditorControl.CustomFiltering +=
new
GridViewCustomFilteringEventHandler(EditorControl_CustomFiltering);
radMultiColumnComboBox1.EditorControl.Columns[
"Uint_Value"
].CustomDataOperation = CustomDataOperation.Filtering;
radMultiColumnComboBox1.EditorControl.EnableFiltering =
true
;
radMultiColumnComboBox1.EditorControl.MasterGridViewTemplate.ShowFilteringRow =
false
;
radMultiColumnComboBox1.TextChanged +=
new
EventHandler(combo_TextChanged);
}
void
combo_TextChanged(
object
sender, EventArgs e)
{
RadMultiColumnComboBox combo = (RadMultiColumnComboBox)sender;
combo.EditorControl.Columns[
"Uint_Value"
].Filter =
null
;
combo.EditorControl.Columns[
"Uint_Value"
].Filter =
new
FilterExpression(FilterExpression.BinaryOperation.AND, GridKnownFunction.EqualTo,
"justForceFilteringEvent"
);
}
void
EditorControl_CustomFiltering(
object
sender, GridViewCustomFilteringEventArgs e)
{
if
(
string
.IsNullOrEmpty(radMultiColumnComboBox1.Text))
{
e.Visible =
true
;
}
else
{
e.Visible = e.GridViewTemplate.Rows[e.RowIndex].Cells[e.Column.UniqueName].Value.ToString() == radMultiColumnComboBox1.Text;
}
}
Do not hesitate to contact me again if you have other questions.
All the best,
Martin Vasilev
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the
Telerik Public Issue Tracking system and vote to affect the priority of the items.