DataBinder.Eval问题

时间:2016-05-12 18:51:34

标签: c# entity-framework telerik databinder radlistview

我在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数据源确实有一个连接字符串 - 我正在使用新的代码生成模板 - 所以这不是问题。

我的问题是我希望组合框在编辑时绑定。但如果activeFlagfalsedeletedFlagtrue(或两者),Radlistview将不会进入编辑模式。有没有一种优雅的方法来做标记或一些优雅的查询?

1 个答案:

答案 0 :(得分:0)

我的理解是,你想在某些条件下禁止编辑。

您必须从RadListView订阅ItemDataBound事件。在那里,您可以将DataItem强制转换为对象并检查条件(Get Data being bound to ListView)。

然后你可以访问你的控件并操纵它们(比如隐藏它们)...... Conditionaly disable command button