J'ai besoin de quelques conseils pour la conception suivante.Garder la trace de plus de 40 valeurs de contrôle
J'ai un contrôle onglet qui contient diverses zones de groupe. Dans la zone de groupe, des contrôles spécifiques se rapportent à cette zone de groupe. Par exemple:
Maintenant, chaque fois qu'une modification est apportée à aucun contrôle dans la zone de groupe, la valeur de la commande doit être suivi, car à la fin du cycle demande d'exécution, les données de contrôle devront être enregistré dans un fichier contenant cette valeur. Un exemple de fichier est:
HOT_STANDBY_FEATURE_ENABLE [val from control here]
HEART_BEAT_DIGITAL_OUTPUT [val from control here]
....
Une conception que je pense a un autre qui a seulement des propriétés que les ensembles forment la boîte de groupe chaque fois qu'un événement ValueChanged se produit sur une contrôle.
code Exemple:
class ConfigurationValues
{
public int HotStandbyValue { get; set; }
public int HeartBeatDigitalOutputValue { get; set; }
//...add all other controls here
}
L'inconvénient que je vois à cela est qu'il ya 40 contrôles sur cette page onglet, donc je dois saisir manuellement chaque propriété. Lorsque le fichier doit être généré à la fin du cycle d'exécution de l'application, j'ai une méthode qui obtient la valeur du besoin de contrôle.
Exemple:
private void GenerateFile()
{
string[] file =
"HOT_STANDBY_FEATURE_ENABLE " + ConfigurationTabSettings.HotStandbyValue;
}
Une autre considération de la conception que je dois faire est que chaque fois qu'un utilisateur clique sur « Fichier de configuration ouverte », les valeurs du fichier à partir du disque doivent être chargés dans les propriétés de sorte que le formulaire peut prendre ces données au démarrage et remplir les contrôles dans les zones de groupe avec leurs valeurs respectives.
Toutes les suggestions sur cette conception seraient grandement appréciées. Je sais que ce n'est pas le moyen le plus efficace de le faire et je ne suis pas le programmeur le plus expérimenté, donc tous les mots-clés Google que je peux rechercher seraient très bien aussi.
Merci pour l'écriture Mangist. Après avoir réalisé que je peux utiliser XML pour enregistrer et charger les paramètres de configuration, je vais essayer d'utiliser cette méthode pour charger les contrôles. Je lis à propos de DataBinding et trouve cela confus pour le moment. – brazc0re
L'utilisation de DataBinding est beaucoup plus facile et plus lisible que la lecture de vos propriétés ConfigurationValues et la définition manuelle des propriétés Text sur les contrôles. Lorsque vous allez enregistrer vos données, vous devez les lire dans l'objet ConfigurationValues. Tout ceci est géré automatiquement par le framework si vous utilisez la liaison. Bonne chance! – Mangist
Mangist, après avoir expérimenté l'exemple DataBinding que vous avez écrit, c'est le meilleur moyen pour moi d'y aller. Comme vous l'avez mentionné, le cadre de liaison rend la lecture de la valeur "Texte" beaucoup plus facile. – brazc0re