0 votes

Alignement des contrôles de l'utilisateur

J'ai un UserControl ASP.Net qui ressemble à ceci :

<%@ 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>

En outre, j'ai un formulaire web 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>

Lorsque j'ajoute plusieurs contrôles d'utilisateur au moment de l'exécution en utilisant :

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

}

Ils sont ajoutés à l'espace réservé mais alignés les uns en dessous des autres. J'aimerais qu'elles soient placées l'une à côté de l'autre. Est-ce possible et si oui, comment ?

Salutations

1voto

M4N Points 48758

Faites en sorte que votre tableau soit flottant : droite, par exemple :

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

Ou peut-être une solution encore plus propre : placez un div autour du contenu de votre contrôle d'utilisateur et définissez le div à float:right :

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

BTW : si la page n'est pas assez large pour afficher tous les tableaux sur une seule ligne, ils seront placés sur une nouvelle ligne avec cette solution.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X