Accueil > Forum > > > > Donner des propriétés à un ASCX ?
Donner des propriétés à un ASCX ?
dimanche 17 avril 2005 à 01:14:05 |
Donner des propriétés à un ASCX ?

smoitry
|
Bonjour ! J'ai un gros soucis, en codant un user control en ASCX et C#. Je m'explique, pour faire, simple, et déjà tester avant de faire plus compliqué : Un composant menu.ascx dans lequel j'ai mis un label (ça aurait pu être un litteral, mais là n'est pas le problème). Dans le code behind de ce contrôle, j'ai ceci :
protected string _cssid = ""; protected string _titre = ""; protected System.Web.UI.WebControls.Label Label1;
public string cssid { get { return(_cssid); } set { _cssid = value; } }
public string titre { get { return(_titre); } set { _titre = value; } }
private void Page_Load(object sender, System.EventArgs e) { // Placer ici le code utilisateur pour initialiser la page string html_menu = ""; html_menu = "<div id=\"" + cssid + "\">"; html_menu += "<h2>" + titre + "</h2>"; html_menu += "</div>"; Label1.Text = html_menu; }
J'appelle ce contrôle depuis un autre contrôle (mais je pense que même si je l'appelais directement depuis ma page aspx cela reviendrait au même) : <%@ Control Language="c#" AutoEventWireup="false" Codebehind="page_menu.ascx.cs" Inherits="test.ctrl.page_menu" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%> <%@ Register TagPrefix="test" TagName="menu" Src="menu.ascx" %> <test:menu id="menu1" runat="server" />
Puis dans le code behind de ceci :
private test.ctrl.menu menu1;
private void Page_Load(object sender, System.EventArgs e) { // Placer ici le code utilisateur pour initialiser la page menu1 = new menu(); menu1.titre = "Test"; menu1.cssid = "club"; }
Et à l'exécution, voici ce qui sort de tout ça : <span id="page_head1_page_menu1_menu1_Label1"><div id=""><h2></h2></div></span>
Autrement dit, soit il ne se souvient pas des propriétés que je lui initialise, soit il génère le contrôle avant que je ne puisse lui passer les propriétés en paramètres. J'ai fait un essai avec un loadcontrol suivi d'un page.controls.add mais d'une part cela ne fonctionne que directement dans la page aspx (ce qui ne m'arrange pas en l'occurence), et d'autre part le code se retrouve tout à la fin du flux html généré (en gros mon controls.add, je ne sais pas à quel endroit il l'ajoute ce contrôle, moi j'ai besoin de le placer à un endroit précis du flux html). D'autre part, je ne peux pas initialiser les propriétés du genre :
<test:menu id="menu1" runat="server" titre="Test" />
<%@ Control Language="c#" AutoEventWireup="false" Codebehind="page_menu.ascx.cs" Inherits="aerocase.ctrl.page_menu" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%>car je ne connais pas ces propriétés à l'avance, puisqu'à terme ce sera lu soit dans un xml soit dans une base SQL ...
Alors comment faire ? Sûrement que je n'ai pas la bonne démarche, mais justement si quelqu'un pouvait me donner la bonne méthode pour parvenir à mes fins ! Parce que ça fait 3 jours que je fouille un peu partout sur le net sans trouver ... (je précise que j'ai essayé d'utiliser le page_init et le page_prerender à la place du page_load mais rien n'y fait)
Merci par avance à qui voura bien me tirer de ce pétrin !!! 
Stéphane <%@ Register TagPrefix="aerocase" TagName="menu_section" Src="menu_section.ascx" %>
|
|
dimanche 17 avril 2005 à 02:49:10 |
Re : Donner des propriétés à un ASCX ?

jesusonline
|
Réponse acceptée !
Normal, supprime le new et met un protected
protected test.ctrl.menu menu1;
private void Page_Load(object sender, System.EventArgs e) { // Placer ici le code utilisateur pour initialiser la page menu1.titre = "Test"; menu1.cssid = "club"; }
Ca devrait marcher.
Cyril - MCP ASP.netWebmaster de : Hoshimi.CodeS-SourceS.fr
|
|
dimanche 17 avril 2005 à 12:30:06 |
Re : Donner des propriétés à un ASCX ?

smoitry
|
Merci Jesusonline !!! C'est exactement ça ! Je n'arrive pas à croire que j'ai pu perdre autant de temps là dessus, mais évidemment il fallait le savoir !
Encore mille mercis !
A+
Stéphane
|
|
dimanche 17 avril 2005 à 15:19:55 |
Re : Donner des propriétés à un ASCX ?

jesusonline
|
Réponse acceptée !
C'est la meme chose que pour un bouton. Quand tu met un bouton dans le
code aspx, tu ne fais pas de new pour lui mettre des choses dedans.
Il y a tres peu de différence entre un <asp:button et un
<uc1:toncontrol ... si ce n'est que le premier il est concu par Ms
dans une assembly et le second par toi meme dans un ascx.
Mais pour le reste c'est la meme chose.
Cyril - MCP ASP.netWebmaster de : Hoshimi.CodeS-SourceS.fr
|
|
lundi 18 avril 2005 à 23:56:40 |
Re : Donner des propriétés à un ASCX ?

smoitry
|
Tu as entièrement raison, tout paraît logique. C'est une mauvaise habitude prise dans les applications "Windows Forms" où tous les contrôles sont "private" ... Merci pour ton aide !
J'ai une autre question, mais je crée un autre sujet ça servira sans doute à d'autres aussi !
Encore merci ! A+
Stéphane
|
|
Cette discussion est classée dans : menu, page, html, titre, propriétés
Répondre à ce message
Sujets en rapport avec ce message
Comment faire les découpages du formulaire html [ par Adhc ]
Je veux faire un site et j'ai besoin d'information pour la démarche du développement des pages.Ma question et la suivante : découpage te préparation d
generer fichiers HTML [ par maya ]
J'aimerais générer un fichier HTML à partir d'1 page asp...Jusqu'ici pas trop de gros soucis , si ce n'est que j'aimrais que ce fichier porte le nom d
generer fichiers HTML [ par maya ]
J'aimerais générer un fichier HTML à partir d'1 page asp...Jusqu'ici pas trop de gros soucis , si ce n'est que j'aimrais que ce fichier porte le nom d
generer fichiers HTML [ par maya ]
J'aimerais générer un fichier HTML à partir d'1 page asp...Jusqu'ici pas trop de gros soucis , si ce n'est que j'aimrais que ce fichier porte le nom d
generer fichiers HTML [ par maya ]
J'aimerais générer un fichier HTML à partir d'1 page asp...Jusqu'ici pas trop de gros soucis , si ce n'est que j'aimrais que ce fichier porte le nom d
Afficher un lien html dans une page asp [ par RapAttak ]
Bjr à tous !Petit débutant en asp, je me forme au gré des humeurs de mon soft Ultradev 4!Petit débutant, donc petits souçis !!Je souhaiterai pouvoir a
Télécharge une page HTML en asp pour la traiter [ par Hexen ]
Peut-on et si oui comment, télécharger sur son site une page html, afin de la faire lire par un script pour alimenter une base de donnée.
activer un champs à l'ouverture d'une page html ? [ par Hesky ]
Bonjour, est il possible que positionner le curseur directement sur un champs particulier une fois que la page web est chargée ?De meme est il possibl
sos asp [ par souma ]
nous avons un site avec une page d'accueil index.aspnous avons effectué des mofications. et une fois que je clique sur un menu de cette page, j'ai d'a
Afficher un document word dans un page html ? [ par lelouperre ]
Je souhaite afficher le contenu d'un fichier word sachant que word est sur le serveur et pas sur le poste client. J'ai trouvé le code suivant qui ne f
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|