DataBinder.Eval Issue

У меня есть некоторые элементы управления внутри EditItemTemplate в пределах RadListView управления:

 <telerik:RadComboBox ID="cbCategoryTypeTueET" runat="server" Skin="Office2010Black"
     SelectedValue='<%# DataBinder.Eval(Container.DataItem, "CategoryTypeID") %>'
     TabIndex="1" Width="100%" EmptyMessage="--Select Category Type--" DataSourceID="edsCatTypeTueET"
     DataTextField="CategoryName" DataValueField="CategoryTypeID" AutoPostBack="True"
     OnSelectedIndexChanged="cbCategoryTypeTueET_SelectedIndexChanged" AccessKey="t" AppendDataBoundItems="True">
</telerik:RadComboBox>
<asp:EntityDataSource ID="edsCatTypeTueET" runat="server" ConnectionString=""
     DefaultContainerName="ATITimeEntry" EnableFlattening="False" EntitySetName="TimeTrackingCategoryTypes"
     Select="it.[CategoryTypeID], it.[CategoryName]"
     Where="it.deletedFlag = false AND it.activeFlag = true" >
</asp:EntityDataSource>

В источнике данных Entity действительно есть строка подключения - я использую новый шаблон генерации кода - так что это не проблема.

Моя проблема в том, что я хочу, чтобы выпадающий список связывался при редактировании. Но если activeFlag является false или же deletedFlag является true (или оба) Radlistview не перейдет в режим редактирования. Есть ли элегантный способ сделать это с помощью разметки или какого-нибудь элегантного запроса?

1 ответ

Насколько я понимаю, вы хотите запретить редактирование при некоторых условиях.

Вы должны подписать событие ItemDataBound из RadListView. Там вы можете привести DataItem к вашему объекту и проверить условие ( Получить данные, привязанные к ListView).

Затем вы можете получить доступ к вашим элементам управления и манипулировать ими (например, скрыть их)... Условно отключите командную кнопку

Другие вопросы по тегам