2

我正在尝试开发一个 Web 部件,它将显示我的照片库中的随机照片。

我已经能够成功循环并从库中选择一张随机照片。我现在的问题是在 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;
4

1 回答 1

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);
于 2012-05-10T18:06:22.720 回答