使用HTML&;在MetroApps中创建GroupItems;Javascript
我正在使用Windows 8和Visual Studio 2012 RC进行Metro应用程序开发 这里我使用使用HTML&;在MetroApps中创建GroupItems;Javascript,javascript,html,windows-8,microsoft-metro,visual-studio-2012,Javascript,Html,Windows 8,Microsoft Metro,Visual Studio 2012,我正在使用Windows 8和Visual Studio 2012 RC进行Metro应用程序开发 这里我使用GridApplication模板创建3个ListView(groupedItems),这3个ListView需要显示来自我的服务的不同信息。实际上,在默认网格应用程序中,它们为所有listview提供了公共项,但是这里我不想为第二个listview显示图像,当我删除javascript文件中的背景图像变量时,它显示为空图像符号(参见屏幕截图) 下面我尝试给出我的应用场景 有人能帮我得到
GridApplication
模板创建3个ListView(groupedItems),这3个ListView需要显示来自我的服务的不同信息。实际上,在默认网格应用程序中,它们为所有listview提供了公共项,但是这里我不想为第二个listview显示图像,当我删除javascript文件中的背景图像变量时,它显示为空图像符号(参见屏幕截图)
下面我尝试给出我的应用场景
有人能帮我得到我的输出吗
多谢各位。
您需要在HTML中修改模板
<div class="itemtemplate" data-win-control="WinJS.Binding.Template">
<img class="item-image" src="#" data-win-bind="src: backgroundImage; alt: title" />
<div class="item-overlay">
<h4 class="item-title" data-win-bind="textContent: title"></h4>
<h6 class="item-subtitle win-type-ellipsis" data-win-bind="textContent: subtitle"></h6>
</div>
</div>
<div class="itemtemplatenoimage" data-win-control="WinJS.Binding.Template">
<div class="item-overlay">
<h4 class="item-title" data-win-bind="textContent: title"></h4>
<h6 class="item-subtitle win-type-ellipsis" data-win-bind="textContent: subtitle"></h6>
</div>
</div>
您需要在HTML中修改模板
<div class="itemtemplate" data-win-control="WinJS.Binding.Template">
<img class="item-image" src="#" data-win-bind="src: backgroundImage; alt: title" />
<div class="item-overlay">
<h4 class="item-title" data-win-bind="textContent: title"></h4>
<h6 class="item-subtitle win-type-ellipsis" data-win-bind="textContent: subtitle"></h6>
</div>
</div>
<div class="itemtemplatenoimage" data-win-control="WinJS.Binding.Template">
<div class="item-overlay">
<h4 class="item-title" data-win-bind="textContent: title"></h4>
<h6 class="item-subtitle win-type-ellipsis" data-win-bind="textContent: subtitle"></h6>
</div>
</div>
您可以在Javascript中动态创建
ListView
项,并通过检查items“group”属性将不同的CSS应用于每个ListView
项
function listViewItemTemplate(item) {
// data has has information about each item
var data = item.data._value;
var itemElement = document.createElement('div');
itemElement.id = 'testElement';
if (data.group === "group1") {
itemElement.class = "cssForGroup1";
var image = document.createElement('image');
image.src = "you_file_path";
image.css = "imageCssForGroup1";
itemElement.append(image);
} else if (data.group === "group2") {
itemElement.class = "cssForGroup2";
}
...
else {
...
}
return {element: itemElement}
}
...
// Then you can assign the template to your listview
youListViewControl.itemTemplate = listViewItemTemplate;
您可以在Javascript中动态创建
ListView
项,并通过检查items“group”属性将不同的CSS应用于每个ListView
项
function listViewItemTemplate(item) {
// data has has information about each item
var data = item.data._value;
var itemElement = document.createElement('div');
itemElement.id = 'testElement';
if (data.group === "group1") {
itemElement.class = "cssForGroup1";
var image = document.createElement('image');
image.src = "you_file_path";
image.css = "imageCssForGroup1";
itemElement.append(image);
} else if (data.group === "group2") {
itemElement.class = "cssForGroup2";
}
...
else {
...
}
return {element: itemElement}
}
...
// Then you can assign the template to your listview
youListViewControl.itemTemplate = listViewItemTemplate;
@gswin感谢您的回复,实际上,如果我删除html中的图像标记,它也会影响组1和组3。因此,我不想在这3个组之间保持任何关系。有任何其他项目模板来分隔这些组吗?是的,您基本上需要一个项目模板,用于您想要使用的每个不同样式。@gswin,你能给我提供一些html来获取上述输出场景吗?提前谢谢你。@gswin谢谢你的回复,实际上如果我删除html中的图像标记,这对第1组和第3组也有影响。所以我不想在这3个组之间保持任何关系。还有其他项目模板来分隔这些组吗?是的,您基本上需要一个项目模板,用于您想要使用的每个不同样式。@gswin,您能提供一些html来获得上述输出场景吗?提前谢谢。