我正在尝试开发一个可以显示照片库中随机照片的网页部件。
我已经能够成功遍历并从库中选择一张随机照片。我现在的问题是在SharePoint网站上显示此照片。我已经尝试创建一个图像控件并将url设置为我检索到的url并以编程方式添加图像控件但是在web部件加载后图像似乎没有显示在页面上。它只是显示一个红色X表示图像无法显示。
如果我在浏览器中导航到照片的URL,则会显示它,但不会在Web部件尝试将其拉下时显示。
任何人都可以给我指针吗?我仍然是SharePoint初学者
这是我到目前为止所做的:
Random randomNumber;
randomNumber = new Random();
Controls.Clear();
ClearChildState();
SPWeb thisWeb = SPContext.Current.Web;
SPPictureLibrary pictures = (SPPictureLibrary)thisWeb.Lists["Houston Photos"];
int pictureCount = pictures.ItemCount;
int index = randomNumber.Next(pictureCount);
string source = thisWeb.Url + "/" + pictures.Items[index].Url;
String itemHtml = String.Format(@"<img SRC={0}+height=200px> </img>",source);
this.Controls.Add(new LiteralControl(itemHtml));
imgControl.ImageUrl = source;
答案 0 :(得分:3)
我说这是你的img标签,这就是问题
尝试类似
的内容string itemHtml = string.concat("<img src=\"", source, "\" height=\"200\" />);
您还可以使用Image类控件http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.image.aspx
Random randomNumber;
randomNumber = new Random();
Controls.Clear();
ClearChildState();
SPWeb thisWeb = SPContext.Current.Web;
SPPictureLibrary pictures = (SPPictureLibrary)thisWeb.Lists["Houston Photos"];
int pictureCount = pictures.ItemCount;
int index = randomNumber.Next(pictureCount);
string source = thisWeb.Url + "/" + pictures.Items[index].Url;
var image = new Image();
image.ImageUrl = source;
image.Height = 200;
this.Controls.Add(image);