Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : [ASPX][C#] Héritage de System.Web.UI.Page [ Archives ASP & ASP.NET / ASP.net ] (merrick)

dimanche 25 avril 2004 à 22:27:27 | [ASPX][C#] Héritage de System.Web.UI.Page

merrick


bonjour

alors voilà, j'ai voulu factoriser des pages qui avait un comportement commun.

j'ai ainsi créer une classe abstraite classeMere.cs comme suit:

Code:
public abstract class classeMere : System.Web.UI.Page
{
public string toto;
public classeMere (string toto)
{
this.toto = toto;
}

private void Page_Load(object sender, System.EventArgs e)
{
// du code
}

#region Web Form Designer generated code
[...]
#endregion
}



j'ai ensuite créer une classe/page classeFille.aspx.cs et classeFille.aspx qui hérite de cela

Code:
public class ClasseFille : ClasseMere
{
public ClasseFille ():
base("truc"){}
}



tout cela à l'air de fonctionner (pas d'erreur de compile)

le problème c'est que lorsque je désire ajouter des webForm (via le mode design) et bien ils sont tous grisées..... il n'a pas l'air de se rendre compte que tout dérive de System.Web.UI.Page.
on peut certe les ajouter à la main (dans le html) mais cela ne me convient pas (la présentation devant se faire un une autre personne en drag and drop)....
y'a t'il une solution? quelque'una t'il déja eu ce problème t comme à t'il fait ?

[
j'ai bien essayer de metre ces comportement commun dans une autre classe et de la racrocher via un agregat, mais dans mon cas, c'est pas possible :'(
]

dimanche 25 avril 2004 à 22:56:46 | Re : [ASPX][C#] Héritage de System.Web.UI.Page

jesusonline

Membre Club Administrateur CodeS-SourceS
Je pense que quand tu dis ajoutes des webforms tu veux dire ajouter des controles
Sinon moi j'ai essayé de faire en gros ce que tu me dis et j'ai pu rajouter des controles, mais j'ai fait ca en vb et j'ai vs.net 2003 (architect) cela vient peut etre aussi de ca.

voici mon code :

Public Class tout3
Inherits PageDerive

#Region " Code généré par le Concepteur Web Form "


#End Region

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Placez ici le code utilisateur pour initialiser la page

WriteTime()

End Sub


End Class

Public Class PageDerive
Inherits System.Web.UI.Page

Public Sub WriteTime()
Response.Write(Now.ToShortDateString)
End Sub
End Class

et dans le aspx j'ai mis <%@ Page Language="vb" AutoEventWireup="false" Codebehind="tout3.aspx.vb" Inherits="TestExemple.tout3"%>
attention à l'attribut inherits

donc je ne comprend pas le pb c'est peut etre un problème spécifique à C# ou a ta version de VS
j'ai pas tout à fait compris le code C# il y a surtout un truc que je comprend pas et que j'ai pas du mettre c'est le abstract c'est l'equivalent du mustinherit en VB ?
oui je pense que c'est ca je viens d'essayer avec un mustinherit et ca me donne les meme problèmes que toi, je vais essayer de voir ce que je peux faire de mon coté pour vb mais il te reste toujours une eventuelle solution en elevant ton abstract ...

Cyril (Alias Jesusonline)

dimanche 25 avril 2004 à 23:05:35 | Re : [ASPX][C#] Héritage de System.Web.UI.Page

merrick

salut

le coup du abstract ca veux simplement dire que dans ma classe MEre j'ai une fonction non défini (un truc du genre:
public void fctToto () ;
)
la classe mère n'es ainsi pas instanciable et toutes ses classe fille devront décrire cette fonction.

sinon moi j'ai VS 2002 (je sais pas si ca peut venirde là....)
et oui il s'agit bien de controle queej désire ensuite ajouter en drag and drop.

voilà voilà

lundi 26 avril 2004 à 09:48:58 | Re : [ASPX][C#] Héritage de System.Web.UI.Page

merrick

il semble que cela vienne "juste" du passage d'argument dans le constructeur!
s'il n'y a pas d'argument dans le base() de la page fille, ca passe, sinon ca passe pas (ou alors il faut passer un ruc spécial dans la page aspx au niveau des directives (passer l'argument dans le inherits ou.... ??????)

bref voilà si quelqu'un sait ce qu'il faut modifié....

lundi 26 avril 2004 à 18:59:06 | Re : [ASPX][C#] Héritage de System.Web.UI.Page

jesusonline

Membre Club Administrateur CodeS-SourceS
ton problème doit je pense venir de ton abstract qui doit avoir pour équivalent mustinherit en Vb moi en mettant mustinherit j'avais le meme problème que toi ...

Malheureusement je ne comprend pas le public ClasseFille ():
base("truc"){}
a quoi correpond ton base ?
serait ce juste l'equivalent de faire en vb public classeFille as new ClasseMere("truc") ?
[:'(] je connais pas C# et je crois que c'est indispensable pour t'aider ...

sinon à partir de ca : " la classe mère n'es ainsi pas instanciable et toutes ses classe fille devront décrire cette fonction. " ce que tu voudrais ne serait pas une interface ?

Je sais pas si tu connais vb mais à tu essayé de comprendre mon code ? est-ce que ce que j'ai essayé te conviendrais ?

d'apres le dernier message j'ai de plus en plus l'impression que ce que tu demandes est une interface ?

j'espere t'avoir aidé (bienque j'en doute fort)

@+

Cyril (Alias Jesusonline)

mardi 27 avril 2004 à 09:09:53 | Re : [ASPX][C#] Héritage de System.Web.UI.Page

merrick

en faîte en java (je pense que c#voir vb c'est la même chose) une classe abstraite est une classe non instanciable ayant certaines méthode non définie (que les signatures) mais ayant d'autre methode complétement ecrite, alors qu'une interface n'a que des methode seulement signée.
je pense que le base correspond à ton new ClasseMere("truc")

voilà

mardi 27 avril 2004 à 18:55:48 | Re : [ASPX][C#] Héritage de System.Web.UI.Page

jesusonline

Membre Club Administrateur CodeS-SourceS
en vb il y a les mots clés overrides etc... qui devront pouvoir t'aider mais en C# aucune idée je pense qu'il faudrais plus que tu demandes de l'aide sur le forum de www.csharpfr.com"

bon courage


Cyril (Alias Jesusonline)



Cette discussion est classé dans : public, web, page, system, aspx


Répondre à ce message

Sujets en rapport avec ce message

Pb avec les Web Forms [ par Neness ] Je commence avec .Net et je rencontre le pb suivant:Lorsque je met un cotrole sur la feuille ASPX, (une text box par ex) il est bien declaré comme sui recuperer les images de sql sever etr les afficher dans une page aspx sous web matrix [ par ravat ] Bonjour,je veux faire un petit annuaire avec asp.net web matrix avec des listes déroulantes contenant les critéres de selection stockés dans une bd sq Probeleme d'héritage [ par Horfee ] J'ai un problème d'héritage : En fait pour mon site il me faut un systeme de login. Chaque page devra etre accessible suivant le niveau d'authentifica usercontrole : La référence d'objet n'est pas définie à une instance d'un objet. [ par coulis ] Bonjour à tous,Voilà mon problème: je viens de créer une nouvelle application .net et j'ai l'erreur suivante dès que je positionne un usercontrol ? La La référence d'objet n'est pas définie à une instance d'un objet [ par buze63 ] Salut G une page aspx avec un bouton et un usercontrol qui possede un label et un textbox et je voudrai que lorsque je clic sur le bouton un message a [ASP.NET][C#] récupérer un événement click d'un custom web control [ par outcast_fr ] Bonjour, j'ai créé un petit custom web control (pas de user control) composé d'un label et d'un bouton. Mon but c'est de récupérer l'événement associé Liste des controls d'une page [ par Coolpix08 ] BonjourJe viens de poser la question sur CsharpFr qui a trouvé une demi solution...http://www.csharpfr.com/forum.v2.aspx?ID=754843Maintenant il ne res Problème de communication entre C# et ASP [ par prowlx ] Voici mon problème:J'ai créé une page ASP par défaut avec le  Web Development kit Express 2005 de MS(donc utilise le framework .Net 2.0). Cette page Débogage difficile sur CollapsiblePanelExtender [ par SuperBouly ] Bonjour, Je développe un site en asp.net 2.0 et ajax 1.0.Le serveur annonce que Ajax 1.0 est installé.Je précise que j'ai essayé une page avec un Cale Page ASP ou page ASPX ouverture impossible [ par ManuAntibes ] BonjourJe n'arrive pas à ouvrir des pages ASPX avec mon IIS 5.1Par contre des pages en ASP pas de problème.J'ai ce message d'erreur pour les pages en


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,218 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.