我从JSON获取我的图像列表并添加到以下页面:
IEnumerable jsonData = default(IEnumerable);
jsonData = GetJsonValues("http://www.viki.com/api/v2/channels.json");
foreach (MovieDetails item in jsonData)
{
Image thumbNailImage = new Image();
thumbNailImage.ImageUrl = item.Thumbnail;
//this.Master.Controls.Add(thumbNailImage);
this.Controls.Add(thumbNailImage);
}
但是,由于页面模板来自母版页,因此在页面的底部添加图像。
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeBehind="Default.aspx.cs" Inherits="VikiWeb._Default" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
</asp:Content>
现在如何在母版页中添加图像。
答案 0 :(得分:2)
您在要添加控件的位置放置PlaceHolder,并添加与您的代码类似的控件,但使用此PlaceHolder ID为:
<asp:PlaceHolder runat="server" id="placeOnMe" />
和
placeOnMe.Controls.Add(thumbNailImage);
答案 1 :(得分:1)
在母版页中放置asp:Panel
,您需要渲染图像。在内容页面的代码隐藏中,执行此操作
var panel = Master.FindControl("your_panel_id") as Panel;
if(panel != null)
{
IEnumerable jsonData = default(IEnumerable);
jsonData = GetJsonValues("http://www.viki.com/api/v2/channels.json");
foreach (MovieDetails item in jsonData)
{
Image thumbNailImage = new Image();
thumbNailImage.ImageUrl = item.Thumbnail;
panel.Controls.Add(thumbNailImage);
}
}