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

C# Discussion :

Gérer plusieurs écrans avec passage de variable [Débutant]


Sujet :

C#

  1. #1
    Nouveau membre du Club Avatar de Woote
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 38
    Points : 30
    Points
    30
    Par défaut Gérer plusieurs écrans avec passage de variable
    Bonjour à vous :)
    Je reprends la programmation après quasiment trois ans d’arrêts et, dans ma grande douleur, ce n'est pas comme le vélo tellement j'ai oublié des choses et je m'y perds..

    Avant d'exposer mon problème/question je vous présente le contexte de mon projet perso actuel :

    Je suis en train de développer un petit jeu qui a besoin de trois écrans, chaque écran devra disparaître à chaque fois que l'on passe à un autre :
    - Le premier, qui est aussi l'écran de lancement, permet aux joueurs de choisir des options.
    - Le deuxième est l'écran de jeu ou une carte sera tiré aléatoirement selon les paramètres qui ont été choisi sur le premier écran.
    - Le troisième sera un écran du score final.
    Toute la gestion est codé et fonctionne sans soucis.

    La ou je ne m'en sors pas c'est passer d'une fenêtre à une autre en transmettant des variables.

    Donc j'ai plusieurs questions qui touchent au C# et au WPF :
    - Pour les écrans quel est la meilleure utilisation dans mon cas, Fenêtre, Page ou autre ?
    - Quel est la meilleure pratique, même si c'est lourd à mettre en place, pour gérer plusieurs écrans et savoir ou on en est ?
    Disons qu'un maFenetre.Close() suivi d'un newFenetre.Show() n'arrive pas à satisfaire mon envie de faire un truc parfait et réutilisable sur d'autres projets qui seront plus importants. Je recherche donc un système ou je peux contrôler mes fenêtres par le Main de mon application en gros.

    Sachant que ma volonté est ensuite de pouvoir installer mon application sur Android en m'aidant de Xamarin (mais je n'y suis pas encore ^^).

    J'ai tenté des recherches Google avant de venir ici, mais ayant du mal à replonger dans le code j'ai beaucoup de mal à trouver les bons mots clefs donc je vous remercie avant tout de votre sollicitude et je prends conseils, liens tutos et j'en passe =)

    Au plaisir de lire vos réponses,
    Woote.

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    Bonjour

    il s'agit d'une application WPF pour windows ?

    déjà, plutôt que de faire "Close + Show" , tu peux faire show + close (ce qui évitera de masquer avant d'afficher)...

    Après, ton application, pour qu'elle tourne sur Android avec Xamarin, il va surement falloir bosser un peu... Genre, mettre toute la logique
    hors IHM dans une PCL (Portable class), etc...apprendre le dev sous Android..
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  3. #3
    Nouveau membre du Club Avatar de Woote
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 38
    Points : 30
    Points
    30
    Par défaut
    Citation Envoyé par theMonz31 Voir le message
    il s'agit d'une application WPF pour windows ?
    Oui c'est le cas, j'aurais du le dire au début et non pas le sous entendre au milieu :/

    déjà, plutôt que de faire "Close + Show" , tu peux faire show + close (ce qui évitera de masquer avant d'afficher)...
    A moins qu'il n'y ait un intérêt autre qu'esthétique, et que je lirais avec plaisir, je préfère mon déroulement.

    Après, ton application, pour qu'elle tourne sur Android avec Xamarin, il va surement falloir bosser un peu... Genre, mettre toute la logique
    hors IHM dans une PCL (Portable class), etc...apprendre le dev sous Android..
    Déplacer la logique hors IHM n'est pas un soucis et j'en prends bien note, sinon travailler avec Xamarin n'est pas encore d'actualité vu que je n'ai même pas commencé à lire des tutos sur la chose mais ce n'est pas réellement le sujet de mon topic, mais je te remercie des pistes que tu me donnes

  4. #4
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 79
    Points : 118
    Points
    118
    Par défaut
    Salut,

    De mon point de vue, tu est bon pour utiliser des variables globales (je sais qu'il y en a certains qui ont ça en horreur mais bon.. des fois ça sert !)

    L'idée est de créer une classe qui sera commune à tout le monde et accessible par tout le monde (pattern Singleton)

    voir : http://jlambert.developpez.com/tutor...gleton-csharp/

    exemple :
    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
     
    public sealed class DataManager
    {
    	private static readonly Lazy<DataManager> lazy = new Lazy<DataManager>(() => new DataManager());
     
    	private DataManager()
    	{
    	  // initialisations diverses
     
    	}
     
    	public static DataManagerInstance
    	{
    	  get
    	  {
    		return lazy.Value;
    	  }
    	}
     
    	public int NombreDeJoueurs
    	{ get; set;}
    }
    Pour l'appel :

    Dans n'importe quelle Form, ou autre classe

    ...
    DataManager.Instance.NombreDeJoueurs = 2;
    ...

    @+,
    Phil

  5. #5
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 185
    Points : 5 757
    Points
    5 757
    Par défaut
    Quand tu parle d'écran tu veux dire fenêtre ?
    Et pourquoi trois fenêtres ? Plutôt qu'une seul qui utiliserai 3 panels comme conteneur par exemple?

    Ce dont tu parle pourrai ressembler aux formulaires MDI.
    https://msdn.microsoft.com/fr-fr/lib...vs.110%29.aspx

  6. #6
    Nouveau membre du Club Avatar de Woote
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 38
    Points : 30
    Points
    30
    Par défaut
    Toutes mes excuses pour mon manque de réponse.. Ma vie pro m'a un peu bouffé et je n'ai pas eu beaucoup de temps pour moi.

    Même si je n'ai pas eu la réponse que je voulais (mais je pense qu'au final j'ai mal formulé ma problématique) je vous remercie tout de même d'avoir pris le temps de me répondre d'autant plus que vous m'avez donné de nombreuse piste de travail et d'amélioration

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

Discussions similaires

  1. redirection avec passage de variable
    Par laurentSc dans le forum Langage
    Réponses: 5
    Dernier message: 23/06/2010, 22h57
  2. Gérer plusieurs projets avec Maven 2
    Par thewarlock dans le forum Maven
    Réponses: 9
    Dernier message: 22/04/2010, 10h30
  3. fopen url avec passage de variable
    Par Invité dans le forum Langage
    Réponses: 6
    Dernier message: 24/05/2007, 16h18
  4. Gérer plusieurs fenetres avec l'API Windows
    Par jimay dans le forum Windows
    Réponses: 5
    Dernier message: 17/05/2007, 11h47
  5. Probleme avec passage de variables par formulaires
    Par cortex007 dans le forum Langage
    Réponses: 5
    Dernier message: 17/12/2005, 14h08

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