IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Presentation Foundation Discussion :

[C#] dataset avec Page WPF


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 362
    Par défaut [C#] dataset avec Page WPF
    Bonjour

    j'ai un petit soucis tout con... sur une appli en WPF, j'ai ma form principale (frmMain) et a l'ouverture de celle-ci je créé un dataset ds. Jusque là tout roule.

    Dans cette frmMain j'ai une frame qui permet d'afficher des Pages (frmClient ect).

    Comment utiliser mon dataset ds dans frmClient?

    dans frmMain je créé ds ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
     // DECLARATION
            private WpfProjetFinal.DataBase.DBClientDataSet ds;
            private WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.RegionTableAdapter da1;
            private WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.ClientTableAdapter da2;
            private WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.ContactTableAdapter da3;
            private WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.InterventionTableAdapter da4;
     
     
            public frmMain()
            {
                InitializeComponent();
                creationDataset();
            }
     
            // CREATION DATASET
            private void creationDataset()
            {
                ds= new WpfProjetFinal.DataBase.DBClientDataSet();
                da1 = new WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.RegionTableAdapter();
                da2 = new WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.ClientTableAdapter();
                da3 = new WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.ContactTableAdapter();
                da4 = new WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.InterventionTableAdapter();
                da1.Fill(ds.Region);
                da2.Fill(ds.Client);
                da3.Fill(ds.Contact);
                da4.Fill(ds.Intervention);
            }
    merci

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Par défaut
    Salut,

    Citation Envoyé par waspy59
    Comment utiliser mon dataset ds dans frmClient?
    Tu peux définir ton DataSet en statique, ou (suivant ton utilisation du DataSet) donner ton dataset au constructeur de tes pages

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 362
    Par défaut
    salut,

    pas bien compris ton aide... désolé je suis débutant en programmation

    j'ai testé ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    // DECLARATION
            static WpfProjetFinal.DataBase.DBClientDataSet ds;
            private WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.RegionTableAdapter da1;
            private WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.ClientTableAdapter da2;
            private WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.ContactTableAdapter da3;
            private WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.InterventionTableAdapter da4;
     
     
            public frmMain()
            {
                InitializeComponent();
                creationDataset();
            }
     
            // CREATION DATASET
            private void creationDataset()
            {
                ds= new WpfProjetFinal.DataBase.DBClientDataSet();
                da1 = new WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.RegionTableAdapter();
                da2 = new WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.ClientTableAdapter();
                da3 = new WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.ContactTableAdapter();
                da4 = new WpfProjetFinal.DataBase.DBClientDataSetTableAdapters.InterventionTableAdapter();
                da1.Fill(ds.Region);
                da2.Fill(ds.Client);
                da3.Fill(ds.Contact);
                da4.Fill(ds.Intervention);
            }
    j'ai l'erreur
    'WpfProjetFinal.frmMain.ds' est inaccessible en raison de son niveau de protection.
    dans ma Page ou je cherche a utiliser mon dataset.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     comboBox1.DataContext = frmMain.ds.Region ;
    Comment pouvoir utiliser mon dataset dans la Page appelée?

    peux tu developper?

    ps: pour info, je crée mon dataset au lancement de l'appli, et je veux utiliser/modifier ce dataset dans différentes Page.

    a l'avance merci

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Par défaut
    Tu as bien compris , il a juste un problème d'accessibilité comme le message d'erreur le dit.

    Il faut que ton dataSet soit public pour y accéder depuis une autre classe comme une de tes pages :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // DECLARATION
            public static WpfProjetFinal.DataBase.DBClientDataSet ds;
            ...

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    362
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 362
    Par défaut
    j'ai honte.... j'ai tout testé:

    - protected
    - private
    - public
    - static

    mais jamais public static....

    juste une question histoire d'être moins con, "public" permet l'acces dans tout l'assembly? c'est bien ça? alors pourquoi "public" seul ne fonctionne pas? a quoi correspond "static"?

    merci pour tes lumieres

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Par défaut
    Il y a les modificateur d'accès que sont public, private, protected et internal.

    Static lui a un autre sens. Il va permettre de déclarer un membre comme faisant partie du type lui même et pas à l'objet (classe).
    D'où l'écriture frmMain.ds où frmMain est un type et non un objet que tu as initialisé. Après il faut en effet mettre public pour y accéder au sein d'une autre classe (appartenant à ton assembly ou non d'ailleurs)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 16/10/2009, 17h02
  2. [Sécurité] Php avec pages sécurisées https
    Par xender dans le forum Langage
    Réponses: 1
    Dernier message: 27/02/2006, 14h41
  3. Réponses: 7
    Dernier message: 06/12/2005, 16h04
  4. [C#] Remplissage d'un DataSet avec un fichier XML
    Par boleduch dans le forum ASP.NET
    Réponses: 3
    Dernier message: 24/10/2005, 18h13
  5. [VB.NET] Alimenter un dataset avec une chaine XML...
    Par David.V dans le forum ASP.NET
    Réponses: 3
    Dernier message: 25/05/2004, 09h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo