Conversion en string [Résolu]

Signaler
Messages postés
51
Date d'inscription
lundi 6 novembre 2000
Statut
Membre
Dernière intervention
4 décembre 2008
-
Messages postés
51
Date d'inscription
lundi 6 novembre 2000
Statut
Membre
Dernière intervention
4 décembre 2008
-
Hello tout le monde

Voilà, je suis en plein apprentissage de l'asp.NET avec Visual Web Developer, donc je débute pas mal en utilisant le C#.
Je m'entraîne et apprend avec les ateliers fournis par Microsoft sur leur site.
Jusqu'ici tout allait bien, malheureusement je suis tombé sur un gros obstacle, alors que j'ai suivi leur atelier à la lettre (je crois que j'aurais pas dû ^^).

En fait, le principe est que l'on a une page appelée MasterPage.master qui est une page maître contenant des pages de contenu.
Dans cette page maître nous avons un nommé "ltlPiedDePage", qui est, comme vous l'auriez deviné, un pied de page. Dans l'atelier fourni par Microsoft, il est demandé de changer dynamiquement ce pied de page.

Nous avons donc un Code Behind dans la page masterpage.master.cs qui est le suivant:

public partial class MasterPage : System.Web.UI.MasterPage
{
   
//une propriété publique PiedDePage qui renvoit la valeur de la propriété Text du contrôle ltlPiedDePage
    public String PiedDePage

    {
       
        get
        {
            return ltlPiedDePage;
        }
        set
        {
            ltlPiedDePage.Text= value;
        }
    }

}

Ensuite on enregistre et l'on doit rajouté une directive a une page de contenu pour définir le type de page maître dont la page hérite :

<%@ MasterPageFile="~/MasterPage.master" Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ MasterType VirtualPath="~/MasterPage.master" %>

   
    Bienvenue sur Affaires sans risques, N°1 des petites annonces en France !!
   

Enfin, on va dans le code behind de la page de contenu de la page de contenu, et on lui rajoute le code permettant de changer dynamiquement le pied de page:

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Label1.Text = "Bienvenue sur Affaires sans risques, N°1 des petites annonces en France !!";
        //Personnalisation du pied de page
        Master.PiedDePage = "Merci de prendre quelques instants pour répondre à notre enquête de satisfaction";
    }
}

Déjà là ca plante à moitié, l'Intellisense ne reconnaissant pas ma propriété PiedDePage, alors que j'ai bien enregistré toutes les pages, ainsi que les sources.

Et quand j'essaye de lancer l'aperçu, l'erreur est la suivante:
CS0029: Impossible de convertir implicitement le type 'System.Web.UI.WebControls.Literal' en 'string'

Donc, en gros, les literal ne peuvent pas être convertis automatiquement en string si je comprends bien...
Pourtant j'ai regardé leur tuto, et Microsoft n'en parle pas...(en même temps...Microsoft...)

Bah d'avance de votre aide ^^.

  
je quote tu quotes...

5 réponses

Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
54
Pour répondre à la question, est-ce que dans le get tu ne dois pas faire return ltlPiedDePage.Textplutôt ?

<hr />
-Blog-
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
28
C'est normal !

dans le getter de ta propriété tu fais un return litPiedDePage plutot que return litPiedDePage.Text ... je suis sur que c'est écrit dans les tutos  ;-)

<hr />Cyril - MVS - MCP
Messages postés
51
Date d'inscription
lundi 6 novembre 2000
Statut
Membre
Dernière intervention
4 décembre 2008

MERCI D'AVANCE

..scusez pour l'oubli ;)

je quote tu quotes...
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
54
Déplacé sur aspfr.com !














<hr />
-Blog-
Messages postés
51
Date d'inscription
lundi 6 novembre 2000
Statut
Membre
Dernière intervention
4 décembre 2008

Exactement ça !

En même temps c'est logique...

Merci de la réponse ! ;).

je quote tu quotes...