Après ce cours manque de respect envers la culture japonaise ( c'était pour vous épater, je ne le cache pas.), le vif du sujet :
Dans une application WPF respectant scrupuleusement le pattern MVVM, j'ai une vue avec une liste déroulante (ComboBox) et un wrap panel contenant divers petits stack panels, contenant eux même chacun un ensemble de controles ( Label + comboBox ou Label+TextBox).
L'idée est que, quand on sélectionne une option de la ComboBox, le stack panel contenant les contrôles correspondant au choix s'affiche.
Par exemple :
Je choisis "Type" dans la première comboBox, et le panel contenant le label type et la combobox type apparait.
J'ai résolu ce problème de la manière suivante :
Les éléments de ma première comboBox sont des CheckBox, avec les propriété "IsChecked" Bindées à des propriétés "AddNomDuControl_IsChecked", de type bool, dans mon ViewModel .
Mes "petits" stackpanels ont leur propriété "visibility" bindées à des propriété "NomDuControle_IsVisible" de type "Visibility".
Quand je "coche" une checkbox, "AddNomDuControl_IsChecked" passe a true, et son mutateur (set), en plus d'affecter "value" au champs correspondant, passe la propriété "NomDuControle_IsVisible" de "Collapsed" à "Visible".
J'obtiens le résultat attendu, et comme ils sont dans un WrapPanel, il s'affiche les uns à la suit des autres, dans l'ordre ou je les ai créé.
MAIS ...
Je trouve pas ça propre, et encore moins élégant. J'en ai parlé avec mon "supérieur", et il m'a conseillé d'utiliser à la place des "ItemsControl". Seulement voila, j'ai du mal, avec les exemples que j'ai trouvé, à comprendre comment faire.
D'après ce que j'ai compris, il faut déclarer un ItemsControl avec un ItemsTemplate qui sert de modèle, mais après je sèche complétement.
Maintenant il faudrait que j'arrive a cumuler les affichages.
EDIT : J'arrive a cumuler les affichages, mais là j'ai un vrai blocage :
Comment faire pour récupérer la valeur d'une textBox dans un items control?
Parce que la valeur va bien dans une variable de mon objet DisplayedItem, mais pas du tout dans mon ViewModel...
Salut, en tant que contributeur je devrais faire la promotion de CodeS SourceS.
Cependant, il faut se rendre à l’évidence, la communauté n’est plus ce qu’elle a été.
Nous ne sommes plus qu’une poignée à tenter d’aider, et je suis le seul en WPF. Or tes questions me dépassent.
Quand j’ose répondre à l’un de tes sujets, je ne fais que chercher sur d’autres forums.
Autant éviter une étape, tourne toi vers StackOverFlow et MSDN.
C’est en anglais, c’est peut-être un frein. Mais ça n’est malheureusement pas chez nous que tu trouveras quelqu’un du niveau nécessaire à t’aider, et quoiqu’il en soit l’anglais est obligatoire en programmation.
Il y a aussi devellopez.net où la communauté C# est plus active, et là c’est en français.
Salut.
Merci de ta franchise. Je suis déjà sur stackOverflow, c'était presque, disons, par "chauvinisme" que je m'accrochais à CodeS SourceS, et le côté "petit comité" n'était pas pour me déplaire.. Mais je ne veux pas t’assommer de questions obscures!