Impossible de changer une propriété [Résolu]

Signaler
Messages postés
48
Date d'inscription
dimanche 14 août 2005
Statut
Membre
Dernière intervention
12 septembre 2009
-
Messages postés
48
Date d'inscription
dimanche 14 août 2005
Statut
Membre
Dernière intervention
12 septembre 2009
-
J'ai créé une classe "Camera" avec des propriétés. Coici l'une d'elles :

private float _Zoom = 1.0f;

[...]
public float Zoom
        {
            get
            {
                return _Zoom;
            }
            set
            {
                _Zoom = Zoom;
            }
        }
[...]

Je veux changer la propriété en exécution :

private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            switch (e.KeyCode)
            {
                case Keys.Up:
                    {
                        camera.Zoom = camera.Zoom / 1.1f;
                        break;
                    }
                case Keys.Down:
                    {
                        camera.Zoom = camera.Zoom * 1.1f;
                        break;
                    }
                default: break;
            }
        }

Mais la valeur de la propriété ne change pas ! Pourquoi et comment faire ? Merci.

@+, Kaneda Shotaro

2 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
86
Salut,

C'est normal tu lui réaffecte la valeur courante, utilise plutôt le code suivant :

public float Zoom
{
   get
   {
      return _Zoom;
   }
   set
   {
      _Zoom = value;
   }
}

/*
coq
MVP Visual C#
*/
Messages postés
48
Date d'inscription
dimanche 14 août 2005
Statut
Membre
Dernière intervention
12 septembre 2009

Merci beaucoup !

@+, Kaneda Shotaro