2011-11-01 97 views
2

我正在使用Telerik Grid。Telerik MVC Grid有條件的DetailView?

我有一種情況,我必須根據條件填充詳細視圖。任何人都可以給我一個想法,我該如何切換它?

這裏是我的詳細視圖代碼

.DetailView(details => details.ClientTemplate(
      Html.Telerik().TabStrip() 
       .Name("TabStrip_<#= PID #>") 
       .SelectedIndex(0) 
       .Items(items => 
       { 
       items.Add().Text("Details").LoadContentFrom("PDetails", "Med", new { id = "<#= PID #>" }); 
       }) 
       .ToHtmlString() 
    )) 

我想使這項工作是這樣的。

.DetailView(details => details.ClientTemplate(
      Html.Telerik().TabStrip() 
       .Name("TabStrip_<#= PID #>") 
       .SelectedIndex(0) 
       .Items(items => 
       { 
        if(RxTpe == "New") 
        { 
         items.Add().Text("Details").LoadContentFrom("case1", "case1", new { id = "<#= PID #>" }); 
        } 
        else 
        { 
         items.Add().Text("Details2").LoadContentFrom("case2", "case2", new { id = "<#= PID #>" }); 
        } 
       }) 
       .ToHtmlString() 
    )) 

任何人都可以幫助我,我該怎麼做?

+0

那麼,發生了什麼事?爲什麼不接受? – adyusuf

回答

1

當您定義「Items」集合時,可以使用「if語句」。

.Items(items => 
{ 
    if(RxTpe == "New") 
    { 
     items.Add().Text("Details").LoadContentFrom("case1", "case1", new { id = "<#= PID #>" }); 
    } 
    else 
    { 
     items.Add().Text("Details2").LoadContentFrom("case2", "case2", new { id = "<#= PID #>" }); 
    } 
}) 
+0

那麼,發生了什麼?爲什麼不接受? – adyusuf

+0

if(RxTpe ==「New」)RxType在這裏無法訪問 – HaBo

+0

如果你的代碼寫錯了,我無能爲力。這是你的責任寫在這裏訪問。我對你的代碼一無所知。你可以用Model.RxType或ViewBag.RxType等來調用它。但答案是可以寫這樣的東西,當然有可訪問的變量。 – adyusuf