В RadGrid я хочу, чтобы фильтр в одном столбце был множественным выбором списка флажков.
RadGrid имеет основной источник данных dsA
. У меня есть столбец внешнего ключа для этого dsA
, называемый fColumn
, имеющий целочисленные значения, для которого я получаю соответствующий текст этого fColumn
из второй таблицы tblB
. У tblB
есть два столбца (id
и text
), которым id
соответствует fColumn
.
Я знаю, что контрольный список с множественным выбором может быть достигнут с помощью привязанного столбца RadGrid с помощьюдобавив FilterCheckListEnableLoadOnDemand="true"
. Я сделал следующее:
<telerik:GridBoundColumn DataField="fColumn" FilterCheckListEnableLoadOnDemand="true"
HeaderText="HeaderTxt" SortExpression="fColumn" UniqueName="fColumn">
</telerik:GridBoundColumn>
и его файл code.cs:
protected void RadGrid1_FilterCheckListItemsRequested(object sender,
GridFilterCheckListItemsRequestedEventArgs e)
{
string DataField = (e.Column as IGridDataColumn).GetActiveDataField();
e.ListBox.DataSource = dsTblB;
e.ListBox.DataKeyField = "id";
e.ListBox.DataTextField = "text";
e.ListBox.DataValueField = "id";
e.ListBox.DataBind();
}
Я хочу иметь значения FilterCheckList в сетке из tblB
, столбец с именем text
.
Что я получаю как сообщение об ошибке при нажатии на этот фильтр:
fColumn не является ни DataColumn, ни DataRelation для таблицы DefaultView.
Так, как этот сценарий может быть легко достигнут с помощью средств управления Telerik.