我创建了一个webpart,可以在自定义列表中滑动每个图像。我想将每个图像重定向到一个URL。我如何使用"超链接列"在列表中还是通过源代码?
我的代码是这样的:
List<Slider> _lstSlider = new List<Slider>();
if (spLstItemsSlider != null)
{
foreach (SPListItem item in spLstItemsSlider)
{
Slider slide = new Slider();
//slide.Title = Convert.ToString(item["Title"]);
//slide.Description = Convert.ToString(item["Description"]);
foreach (string fileName in item.Attachments)
{
SPFile file = _spWeb.GetFile(item.Attachments.UrlPrefix + fileName);
slide.ImgUrl = file.ServerRelativeUrl;
}
_lstSlider.Add(slide);
}
rptSlider.DataSource = _lstSlider;
rptSlider.DataBind();
}
提前致谢。
答案 0 :(得分:0)
首先,如果此列表的唯一目的是托管要以幻灯片形式显示的图像,那么我将使用带有超链接列的内置图片库。这样您就可以利用内置的图片库幻灯片Web部件,这可能无需创建自定义幻灯片Web部件。
如果内置Web部件不满足您的需求和/或您必须使用自定义列表,则可以通过[ListUrl] / Attachments / [ListItemId] / [AttachmentFileName]访问列表项的附件网址格式。例如,如果您有一个id为1的列表项和一个名为image1.jpg的附件存储在名为Slideshow的列表下,则附件的URL将为“/Slideshow/Attachments/1/image1.jpg”。获取图像的正确URL后,您需要做的就是获取图像应指向的URL,该URL可以存储在文本或超链接列的同一列表中。
我希望这会有所帮助......