2016-12-09 40 views
5

ASP.NET MVC ve önyükleme kullanıyorum. Koleksiyonumda birçok nesne var (> 2) ve her bir ihtiyaç için <div class="col-xs-6"> ama bir satırda sadece 2 cols var. Bu döngü kullanarak nasıl elde edilir? Orada 1 yoludur ama daha iyi bir şey arıyorum:Razor kullanarak döngü yoluyla önyükleme ızgarasını ne kadar düzgün oluşturuyorsunuz?

@model List<Object> 
@using (Html.BeginForm("ActionName", "ControllerName")) 
{ 
    <div class="row"> 
    @for (int i = 0; i < Model.Count; i++) 
    { 
     if (i % 2 != 0) { 
     <div class="row"> 
      <div class="col-xs-6"> 
       @Html.TextBoxFor(o => o[i].Value) 
      </div> 
     </div> 
     } else { 
      <div class="col-xs-6"> 
      @Html.TextBoxFor(o => o[i].Value) 
      </div> 
     } 
    } 
    </div> 
} 

cevap

6

her 2. yineleme

<div class="row"> 
    @for (int i = 0; i < Model.Count; i++) 
    { 
     if (i > 0 && i % 2 == 0) 
     { 
      @:</div><div class="row"> // close and start new row 
     } 
     <div class="col-xs-6"> 
      @Html.TextBoxFor(o => o[i].Value) 
     </div> 
    } 
</div> 
+0

Sadece şaşırtıcı kürek div kapatın ve döngü içinde yeni bir başlangıç! Bu inşaatı hiç bilmiyordum! –

+0

Bu gerçekten şaşırtıcı ve ekran iyi çalışıyor, ancak çıkış HTML'si bir satır DIV'ye sarılmış ilk iki taneye sahip değil. Sadece sonraki her satır. –

+0

@WillStrohl, Evet öyle (ne yaptığınızdan emin değil) –