Overblog Tous les blogs Top blogs Économie, Finance & Droit Tous les blogs Économie, Finance & Droit
Editer l'article Suivre ce blog Administration + Créer mon blog
MENU

Cycle de progression Faire (quelque chose qui marche) -> comprendre ce que l’on fait/comment cela marche -> pousser plus loin les notions

Publicité

[ASP.NET] - Créer des controls web ou Html dynamiquement

[ASP.NET]  - Créer des controls web ou Html dynamiquement

Default.aspx :
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
 
<%@ Register Src="MyWebUserControl.ascx" TagName="MyWebUserControl" TagPrefix="uc1" %>
 
<!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>Page sans titre</title>
</head>
<body>
    <form id="form1" runat="server">
    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    </form>
</body>
</html>
 
1 – Controls web
    protected void Page_Load(object sender, EventArgs e)
    {
 
        // 1 - System.Web.UI.WebControls
        ListBox listBox = new ListBox();
        listBox.Items.Add("item 1");
        listBox.Items.Add("item 2");
        // j'applique un evenement
        listBox.AutoPostBack = true;
        listBox.SelectedIndexChanged += new EventHandler(listBox_SelectedIndexChanged);
        form1.Controls.Add(listBox);
 
        Button button = new Button();
        button.Text = "OK";
        button.Click += new EventHandler(button_Click);
        form1.Controls.Add(button);
    }
 
    void button_Click(object sender, EventArgs e)
    {
        Label1.Text = "click on button";
    }
 
    void listBox_SelectedIndexChanged(object sender, EventArgs e)
    {
        Label1.Text = (sender as ListBox).SelectedValue;
    }
 
2 –controls HTML
    protected void Page_Load(object sender, EventArgs e)
    {
        // 2 - System.Web.UI.HtmlControls
        HtmlTable table = new HtmlTable();
        HtmlTableRow row = new HtmlTableRow();
        HtmlTableCell cell1 = new HtmlTableCell();
        cell1.Controls.Add(listBox);
        HtmlTableCell cell2 = new HtmlTableCell();
        cell2.Controls.Add(button);
        row.Cells.Add(cell1);
        row.Cells.Add(cell2);
        table.Rows.Add(row);
 
        form1.Controls.Add(table);
       
    }
 
 
3 – Charger un control utilisateur web dynamiquement
J’ai un control utilisateur web MyWebUserControl que je vais ajouter dynamiquement à la page
protected void Page_Load(object sender, EventArgs e)
    {
 
        Control myWebUserControl1 = this.LoadControl("MyWebUserControl.ascx");
        form1.Controls.Add(myWebUserControl1);
 
    }

webcontrol.JPG
Publicité
Retour à l'accueil
Partager cet article
Repost0
Pour être informé des derniers articles, inscrivez vous :
Commenter cet article