Mettre à jour automatiquement les étiquettes de variables globales lorsque des modifications
Voici donc mon programme.
using System;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
static int count = 0;
public Form1(){InitializeComponent();}
private void button1_Click(object sender, EventArgs e)
{
count += 1;
label1.Text = Convert.ToString(count);
}
private void button2_Click(object sender, EventArgs e)
{
count -= 1;
label1.Text = Convert.ToString(count);
}
}
}
Maintenant... j'ai un programme qui, d'ajouter ou de soustraire le nombre de 1 lorsqu'on appuie sur un des deux boutons et d'enregistrer la valeur de la variable globale de compter et puis les afficher dans label1.
Permet de dire que je veux modifier la valeur d'un autre label (label2) dans laquelle je veux aussi afficher le contenu de la variable nombre de valeur à chaque fois que le label1 changements.
Donc, il ya une façon, l'utilisation du bouton qui peut être fait comme ceci:
private void button1_Click(object sender, EventArgs e)
{
count += 1;
label1.Text = Convert.ToString(count);
label2.Text = Convert.ToString(count);
}
private void button2_Click(object sender, EventArgs e)
{
count -= 1;
label1.Text = Convert.ToString(count);
label2.Text = Convert.ToString(count);
}
Voici donc la question...
Mais disons que je veux mettre à jour la valeur de label2 pas de cas de boutons, mais en quelque sorte il mettrait à jour la valeur automatiquement à partir de la variable nombre à chaque changement.
S'il vous plaît aider.
Vous devez vous connecter pour publier un commentaire.
Utilisation de la propriété de cette situation
Et quand vous voulez changer le comte, il suffit d'utiliser la propriété à la place
Vous ne pouvez pas les données se lier à un
static
membre, et vous ne pouvez pas les données se lier à un champ (sauf si vous utilisez une liaison personnalisée-modèle); une option serait d'avoir quelques contextuelle instance que vous pouvez data-bind trop, par exemple:Alors permettre de passer un
Counters
instance de votre formulaire, et data-bind:Vous pourriez avoir un
static
instance de laCounters
, mais encore une fois : ce n'est pas un grand dessein;static
signifie souvent que vous êtes en prenant un hacky coupe courte.Comment sur l'utilisation d'une propriété? Il ne peut pas être statique de plus, c'est une exigence?
[Edit: Vous pourriez faire _count statique à nouveau dans le cas qui EST une exigence.]
Ce sera toujours déclencher l'événement
CountChanged
chaque fois quecount
est modifié, de sorte que vous pouvez attacher votre des gestionnaires d'événements personnalisés pour chaque contrôle.