2012-07-12 79 views
1

如何以編程方式移動圖像控件?在該頁面上的一個asp.net web應用程序中,我希望以編程方式創建3個圖像,並在它們之間放置一些距離;以編程方式在頁面上放置圖像ASP.net Web應用程序c#

int punctX = 50; 
      int punctY=50; 

      for (int y = 0; y < 2; y++) 
      { 
       System.Web.UI.WebControls.Image image = new System.Web.UI.WebControls.Image(); 
       image.ID = "culoare" + y.ToString(); 

- 如何在頁面上放置圖像? }

+0

圖像存儲在數據庫中哪裏? – IrishChieftain 2012-07-12 01:23:33

回答

0

您必須將它們添加到您的網頁控件集合這樣

page.Controls.Add(yourImage) 
+0

然後呢?我如何將它們放置在給定的X和Y位置? – TBogdan 2012-07-12 01:05:35

+0

爲什麼你想給他們X,Y? – HatSoft 2012-07-12 01:06:50

+0

,因爲我希望它們在所需的位置,並且它們之間有一些空間 – TBogdan 2012-07-12 01:08:21

2

它的更好,如果你可以使用某種類型的佔位符到您的圖像添加到。在這個例子中,我使用了一個asp.net面板控件。在後面的代碼中,您可以使用相應的屬性來設置樣式屬性。

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" 
    CodeBehind="Default.aspx.cs" Inherits="StackOverFlow_2._Default" %> 

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> 
</asp:Content> 
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> 
    <asp:Panel ID="pnlImages" runat="server"></asp:Panel> 
</asp:Content> 

只要你有喜歡的圖像,此

enter image description here

你可以做這樣的事情(不是可能是最乾淨的代碼,但你的想法)

using System; 
using System.Web.UI; 

namespace StackOverFlow_2 
{ 
    public partial class _Default : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
      if (!Page.IsPostBack) 
      { 
       double punctX = 10; 
       double punctY = 10; 

       double spacing = 5; 

       pnlImages.Style["position"] = "relative"; 

       for (int y = 0; y < 3; y++) 
       { 
        System.Web.UI.WebControls.Image image = new System.Web.UI.WebControls.Image(); 
        image.ID = "culoare" + y.ToString(); 
        image.Style["position"] = "absolute"; 
        image.Style["left"] = punctX.ToString() + "px"; 
        image.Style["top"] = punctY.ToString() + "px"; 
        image.Width = 100; 
        image.Height = 60; 
        image.ImageUrl = "~/Images/" + image.ID.ToString() + ".jpg"; 

        pnlImages.Controls.Add(image);      

        punctX += image.Width.Value + spacing; 

       } 
      } 
     } 
    } 
} 

渲染輸出看起來像這樣(你的圖像間隔5px)

enter image description here

0
//The image data is from database. 
    System.Web.UI.WebControls.Image img = new System.Web.UI.WebControls.Image(); 
    img.ID = row["id"].ToString(); 
    img.AlternateText = row["id"].ToString(); 
    img.ImageUrl = "~/myimage.png"; 
    img.Style["position"] = "relative";    //here must be "relative" 
    img.Style["left"] = row["posX"].ToString() + "px"; 
    img.Style["top"] = row["posY"].ToString() + "px"; 
相關問題