Création d'objet via JSON

Fermé
GamesPower Messages postés 44 Date d'inscription jeudi 7 janvier 2016 Statut Membre Dernière intervention 9 août 2016 - Modifié par GamesPower le 26/04/2016 à 13:36
Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 - 26 avril 2016 à 17:59
Bonjour,

Je souhaite pouvoir "personnaliser" l'interface d'une form grâce à un fichier JSON, le seul problème c'est que je n'ai aucune idée de comment coder la partie qui créera directement les panels, les boutons, les pictureboxs, ...
Je m'explique, j'ai un fichier (voir ci-dessous)


"contains": [
 {
  "name": "panel1",
  "type": "panel",
  "size": {
    "width": "500",
    "height": "300"
  },
  "location": {
    "X": "center",
    "Y": "center"
  },
  "anchor": "none",
  "backgroundColor": "224;224;224"
 }
 {
  "name": "button1",
  "type": "button",
  "size": {
    "width": "80",
    "height": "20"
  },
  "location": {
    "X": "50",
    "Y": "60"
  },
  "text": "Cliquez moi ! :)"
 }
]


J'ai déjà traité la récupération des données, mon seul problème est le "type" = "panel", soit je fais une fonction qui créera l'objet en question directement avec les données et des switch de "panel", "button"..
Si il y a plus simple je suis preneur ;)
(J'ai vu la classe "object" mais je crois que c'est que pour les string, les int, ...)
Merci d'avance.
A voir également:

2 réponses

Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 931
26 avril 2016 à 13:43
Bonjour

(J'ai vu la classe "object" mais je crois que c'est que pour les string, les int, ...)

Cette phrase montre que tu n'as pas compris ce qu'est le C#.

Avant de perdre du temps à te débattre avec les bases du C#, je te conseille de les apprendre
https://tahe.developpez.com/dotnet/csharp/

Ça va peut être te prendre une semaine ou deux mais ce temps là ne sera pas perdu.

Je peux t'expliquer comment faire pour afficher une interface qui correspond à ton fichier, mais il y aura sûrement quelques bases que tu n'auras pas totalement acquises, et je ne te donnerais pas un code tout fait....
0
GamesPower Messages postés 44 Date d'inscription jeudi 7 janvier 2016 Statut Membre Dernière intervention 9 août 2016
26 avril 2016 à 17:19
Bonjour,
Merci d'avoir répondu, je ne sais pas ce que j'ai eu ce midi mais en réfléchissant à nouveau après plusieurs heures je me rend compte que cette phrase J'ai vu la classe "object" mais je crois que c'est que pour les string, les int, ... était totalement stupide vu que "string" est une classe comme "Panel" ou "Button", donc après ma magnifique réflexion, je peut utiliser "object" en tant que classe qui représente "tout" (Je peine à m'expliquer ^^). Mais par exemple, depuis un string que je récupère de "type" du fichier JSON via Json.NET, est-il possible de "convertir" "object" en bouton, par exemple, si "type" est égal à "button" dans le fichier ?
0
Whismeril Messages postés 19027 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 24 avril 2024 931
26 avril 2016 à 17:59
je peut utiliser "object" en tant que classe qui représente "tout" (Je peine à m'expliquer ^^)


Ça n'est pas encore ça, tout dérive d'object, donc forcément tout est un object, mais un object n'est pas tout....
Et dans ton cas, avec quelques notions d'héritage seront peut être utiles, car Bouton, Panel, etc... dérivent de Control.

Et ce que tu cherches c'est la reflexion, qui elle aussi nécessite d'avoir bien saisie la programmation objet, l'héritage et le polymorphisme.

https://emerica.developpez.com/dotnet/reflection/introduction/csharp/
0