22

ItemTemplate を含む asp:FormView があります。いくつかの div 要素を使用して FormView 内のコンテンツをデザインしたいと思います。

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

アプリケーションを実行すると、次の HTML が作成されます。

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

実際、テーブルはやや邪魔です。ItemTemplate を使用してコンテンツをフリースタイルにする目的は何なのかわかりませんが、それをテーブルにラップします。

この動作を無効にするか、回避することはできますか? (FormView プロパティにフラグが見つかりませんでした。)

4

3 に答える 3

64

RenderOuterTable="false"FormViewで設定できます

于 2010-08-25T17:51:59.283 に答える
11

次のコードを使用します。

RenderOuterTable="false"

FormViewに配置します。.NET 4.0 で動作します。

于 2012-12-11T14:43:05.377 に答える
3

リピーターを使用する(軽量バージョンで完全にカスタマイズ可能)

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

また

制御アダプターの使用を改善する:

于 2010-03-09T20:03:30.363 に答える