我正在做一个DotNetNuke项目,在该项目中,我必须显示前端SQL Server数据库中的一些图像作为滑块。我已经在ASCX页面上的asp:ListView
控件中添加了滑块标记,并在文件后面的代码中为asp:ListView
分配了数据集。
代码工作正常,但我需要将图像显示为滑块。当前,第二图像显示在第一图像的底部,第二图像显示在第二图像之后。我希望它们像一个滑块,该滑块在左右两侧具有导航按钮,可以从右向左滑动,反之亦然。
这是我的ASCX代码:
<asp:ListView ID="lvFeaturedSlider" runat="server" class="full">
<ItemTemplate>
<div class="home-slide">
<a href="#">
<span class="project-title-large">MARRIOT HOTEL LOUNGE</span>
<img src="http://localhost:52829<%# Eval("Image") %>" alt="">
</a>
</div>
</ItemTemplate>
</asp:ListView>
这是我的代码背后的代码:
private void BindSlider()
{
ProjectsController objController = new ProjectsController();
DataSet ds = new DataSet();
ds = objController.GetFeaturedProjectSlider();
if (ds.Tables[0].Rows.Count > 0)
{
lvFeaturedSlider.DataSource = ds.Tables[0].DefaultView;
lvFeaturedSlider.DataBind();
}
else
{
lvFeaturedSlider.DataSource = null;
lvFeaturedSlider.DataBind();
}
}
当我在ItemTemplate外部对标记进行硬编码时,左右导航按钮会出现。但是在绑定时,它们不会出现,图像也不会像滑块一样显示。我曾尝试将代码代码包含在ItemTemplate中的foreach语句中,但无法弄清楚项目在ASCX页面上的确切格式。
答案 0 :(得分:0)
我知道stackoverflow不赞成通过更改主题来回答问题,但是...我认为这是适当的。
第一个问题:您是否正在主题(皮肤)文件中执行此操作?如果是这样,那不是正常的做法。
第二个问题:您是否将图像存储在DNN数据库中?通常,人们对此并不满意,主要是针对性能问题。
现在执行此操作的正确方法是在DNN安装中安装模块,并使用其UI和工具来配置滑块。所有这些都应该是模块的一部分。有一些非常好的滑块模块,包括商业和开源的。 Google,或访问DNN商店。
现在您的问题。中继器会在页面上创建一系列div,每个图片一个。这就是为什么您以垂直布局查看所有图像的原因。如果要“滑动”它们,则需要添加一些功能。他们的方式是通过添加一些javascript或jQuery将这组div变成一个滑块。 Google的“ jquery滑块”有很多选择。
如果您使用已经开发的模块,那么所有这些工作都将为您完成。您只需要提供图像,也许也可以提供其他东西。