2010-03-09 15 views
17

Bir asp var: bir ItemTemplate ile FormView. Bazı div elemanları ile FormView içinde içerik tasarımı istiyorum: Asp nasıl önlenir: FormView, tablo olarak görüntüleniyor?

<table id="MyFormView" style="border-collapse: collapse;" border="0" cellspacing="0"> 
    <tbody> 
     <tr> 
      <td colspan="2"> 
       <div class="block1"> 
        Stuff... 
       </div> 
       <div class="block2"> 
        Stuff... 
       </div> 

       ... 

       <div class="blockN"> 
        Stuff... 
       </div> 
      </td> 
     </tr> 
    </tbody> 
</table> 

Aslında tablo biraz rahatsız ediyor:

<asp:FormView ID="MyFormView" runat="server" > 
    <ItemTemplate> 
     <div class="block1"> 
      Stuff... 
     </div> 
     <div class="block2"> 
      Stuff... 
     </div> 

     ... 

     <div class="blockN"> 
      Stuff... 
     </div> 
    </ItemTemplate> 
</asp:FormView> 

Ben aşağıdaki HTML oluşturulduğu uygulamayı çalıştırdığınızda. İçeriği serbest bırakmak için bir ItemTemplate'e sahip olmanın amacının ne olduğunu bilmiyorum ama daha sonra bir masaya sarın.

Bu davranışı devre dışı bırakmak veya çalışmak mümkün müdür? (Ben FormView özelliklerinde bir bayrak bulamadık.)

+0

ListView burada yararlı olur mu? LayoutTemplate üzerinde daha fazla kontrole sahipsiniz. –

+0

Başka bir yolu yoksa bunu düşünebilirim. Bir formda değil, bir listede görüntülenecek yalnızca bir nesne var. Yani en "doğal" kontrol ilk bakışta bir FormView gibi görünüyordu. Neyse, bahşiş için teşekkürler! – Slauma

cevap

3

kullanım tekrarlayıcı

<asp:Repeater runat=server ID="r1"> 
<HeaderTemplate><div></HeaderTemplate> 
<ItemTemplate>Zzz</ItemTemplate> 
<FooterTemplate></div></FooterTemplate> 
</asp:Repeater> 

veya

daha iyi kullanılması kontrolü adapters (ışık sürümü ve tamamen özelleştirilebilir):

+0

Hm, ilk seçenekle ne demek istiyorsunuz ("(div) şablonlarınızı kullanın")? İşaretleme örneğiniz tam olarak yaptığım şey değil mi? – Slauma

+0

Üzgünüm. Repeater – garik

+2

kullanmanızı öneririm Bu, soruya cevap vermiyor. FormView, bilgi için bir 'table' (ASP.NET 4.0) –

55

RenderOuterTable="false"'u FormView

+4

fyi, bu ASP.NET 4.0'da yeni http : //www.4guysfromrolla.com/articles/032410-1.aspx –

+2

Stil özelliği 'Genişlik', RenderOuterTable FormView denetimi –

+0

'de devre dışı bırakılırken kullanılamaz en iyi adam sizsiniz! –

10

'da ayarlayabilirsiniz. Aşağıdaki kodu kullanın.

RenderOuterTable="false" 

FormView koy. .NET 4.0'da çalışır.

İlgili konular