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 に答える