0

GroupTemplate で ListView を使用して、各列に 6 つの項目がある 3 列のナビゲーション メニューを作成し、最後の列の 2 つの非データ バインド行を、空の HTML リスト項目を含む EmptyItemTemplate で埋めます。その部分は正常に機能しますが、CSS クラスを各列の 6 番目 (最後) の項目にプログラムで追加する必要もあります。DataBound イベントで CSS クラスを割り当てているため、この部分は最初の 2 列でも正常に機能しています。ここで、ListView.Items コレクションを反復処理し、モジュラス演算子を使用して最初の 2 列の 6 番目の項目にアクセスできます。カウンター。

問題は、EmptyItemTemplate が 2 つの空のリスト項目に正しく入力されている最後の列にあり、その最後にもこの CSS クラスを追加する必要があります。空のアイテムは ListView.Items コレクションには含まれません (これは単なる ListViewDataItems であり、空のアイテムは ListViewItems です)。バインド後に ListViewItems のコレクション全体にアクセスする方法が見つかりません。何か不足していますか?

ItemCreated 中に空のアイテムにアクセスできることはわかっていますが、作成しているアイテムがフローのどこにあるのか、それが最後のアイテムかどうかを判断する方法がわかりません。

これができれば、どんな助けもいただければ幸いです - 私は少し立ち往生しています。

4

1 に答える 1

0

ASP.Net エンジンがページをレンダリングしてクライアントに送信した後、JQuery を使用して CSS クラスを適用します。列に JQuery が検出できる ID 属性が含まれていることを確認する必要がありますが、それ以外は簡単です。

<script type="text/javascript">
    $(document).ready(function () {
        $("#someId").addClass("className");
    }); 
</script>
于 2010-05-04T15:52:53.347 に答える