1

いくつかの場所で使用されているListViewテンプレートがあり、その場でレイアウトタイプを変更したいと思います。

<div class="sorteditemslist" arial-label="sorted items" 
   data-win-control="WinJS.UI.ListView"
   data-win-options="{layout: { type: WinJS.UI.ListLayout}}"
   data-win-bind="winControl.itemDataSource: items.dataSource; winControl.iteminvoked: ItemInvoked;">

デフォルトのレイアウトタイプはですWinJS.UI.GridLayoutが、場合によってはこれをに変更したいと思いListLayoutます。

4

2 に答える 2

2

はい、これは可能です。私はこれを次のコードで正しく動作させることができました:

var listView = element.querySelector(".sorteditemslist").winControl;
WinJS.ui.setOptions(listView, { layout: { type: WinJS.UI.ListLayout }});

また、テンプレート内のレイアウトへの参照を引き出すか、両方のケースをコードで処理するようにしてください。レイアウトの詳細については、msdnページを参照してください。

于 2012-06-25T21:26:34.653 に答える
0

@wloescherが指摘したように、次を使用できます。

listViewElem.layout = new WinJS.UI.GridLayout({ orientation: 'horizontal', maxRows: 1 });
于 2015-05-05T09:35:36.607 に答える