2016-08-01 7 views
1

Es ist möglich, Bedingung Linq in asp.net hinzufügenIF mit ClientDetailTemplateId

@(Html.Kendo().Grid<>(). 
Name("myUniqName"). 
Columns(columns => { 
    columns.Bound(p => p.Title).Width(100).Title("Mytitle"); 
    columns.Bound(p => p.Text).Width(250).Title("Txt").ClientTemplate("#=Text#"); 
}). 
if (number == 1){ 
    .ClientDetailTemplateId("gridSczegolyNazwa") 
}else{ 
    .ToClientTemplate() 
} 
) 

Ist es möglich, über einen Zustand, wie im Beispiel hinzufügen?

+0

Warum nicht einfach die Vorlage zum Anwenden der bedingte Logik? Ich bezweifle, dass du das mit dem Wrapper machen kannst. Möglicherweise mit jquery. –

Antwort

0

Leider nicht, Sie benötigen zwei alternative Grid-Deklarationen und die IF-Anweisung sollte auf der Außenseite sein.

0

fand ich einen Weg ersten Satz Hierarchiespalte Anzeige none:

.k-hierarchy-cell { 
     display: none; 
    } 

dann eine Vorlage Spalte wie diese legen zum Hierarchiespalte bedingt zu erstellen:

columns.Template(@<text></text>).ClientTemplate(@"#if(hasHierarchy== true) {#<a class='k-icon k-i-expand' href='\\#' aria-label='Expand' tabindex='-1'></a>#}#").HtmlAttributes(new { @class = "k-hierarchy-cell-active k-hierarchy-cell" }); 

am Ende gesetzt diese zu blockierende Spaltenanzeige:

.k-hierarchy-cell-active { 
     display: block; 
    }