2016-05-12 12 views
0

Ich habe ein paar Kontrollen innerhalb eines EditItemTemplate innerhalb eines RadListView Kontrolle:DataBinder.Eval Ausgabe

<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> 

Die Datenquelle Entity hat eine Verbindungszeichenfolge haben - ich bin eine neue Code-Generierung Vorlage - so ist dies kein Problem.

Mein Problem ist, ich möchte die Combobox auf bearbeiten binden. Aber wenn activeFlag ist false oder deletedFlag ist true (oder beides) die Radlistview wird nicht in den Bearbeitungsmodus gehen. Gibt es eine elegante Möglichkeit, dies mit Markup oder einer eleganten Abfrage zu tun?

Antwort

0

Mein Verständnis ist, Sie möchten auf einigen Bedingungen bearbeiten verbieten.

Sie müssen das ItemDataBound-Ereignis von der RadListView subskribieren. Dort können Sie DataItem in Ihr Objekt umwandeln und den Zustand prüfen (Get Data being bound to ListView).

Dann können Sie Ihre Steuerelemente zugreifen und manipulieren sie (wie verstecken sie) ... Conditionaly disable command button