2009-02-11 50 views
0

我有一个ASP.Net用户控件,看起来像这样:用户控件对齐

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" 
    Inherits="WebApplication2.WebUserControl1" %> 
    <table> 
     <tr> 
      <td> 
       <asp:Image ID="Image1" runat="server" Width="100" Height="100" ImageUrl="~/Logo.png" /> 
      </td> 
     </tr> 
     <tr> 
      <td> 
       Test 
      </td> 
     </tr> 
    </table> 

另外我有一个ASP网页表单:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication2._Default" %> 
<%@ Register Tagprefix="uc1" Tagname="uc1" Src=".\WebUserControl1.ascx" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" > 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <span> 
     <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder> 
    </span> 
    </form> 
</body> 
</html> 

当我在系统运行时添加多个用户控件:

protected void Page_Load(object sender, EventArgs e) 
{ 
    for (int i = 0; i < 5; i++) 
    { 
     var test = LoadControl(@"~\WebUserControl1.ascx"); 
     PlaceHolder1.Controls.Add(test);  
    } 

} 

它们被添加到占位符中,但是一个在另一个之下对齐。我希望把它们放在一个旁边。这是可能的,如果是的话,怎么样?

问候

回答

1

让你的餐桌浮动:正确的,如:

<table style="float:left"> 
    ... 
</table> 

或者,也许一个更好的解决方法:把周围的用户控制的内容,一个div并设置DIV浮动:权:

<%@ Control Language="C#" ... %> 
<div style="float:right"> 
<table> 
    ... 
</table> 
</div> 

BTW:如果页面不够宽,以显示在一行中的所有表,那么他们将被包装到该解决方案的新的生产线。

+0

+1但你和我知道这一切都很糟糕。 – 2009-02-11 23:18:18