2017-10-20 28 views
0

Dans mon contrôle de modèle, j'ai un bouton et une ellipse. J'ai ajouté un événement click avec Interaction.Behavior. Le bouton fonctionne bien. mais Ellipse ne tire jamais l'événement. Pourquoi ? Je dessine un cercle avec ce code dans le code TemplateControl C#.UWP Interaction.Behavior avec Ellipse

 var _meterCenter = _sensorMeter.GetTemplateChild("PART_MeterCenter") as Ellipse; 
     if (_meterCenter != null) 
     { 
      _meterCenter.Stroke = _sensorMeter.MeterBorder_Brush; 
      _meterCenter.StrokeThickness = _sensorMeter.MeterBorderWidth; 
      _meterCenter.Fill = _sensorMeter.CenterThresHoldColor; 
      _meterCenter.Opacity = Opacity; 
      _meterCenter.Height = _sensorMeter.meterCenterSize * 2; 
      _meterCenter.Width = _sensorMeter.meterCenterSize * 2; 
      _meterCenter.Margin = new Thickness(0, _sensorMeter.MeterYOffset*2, 0, 0); 
     } 

En fait, dans mon code, il y a beaucoup de grille, chemin, Ellipse. Dois-je aller la plupart des couches supérieures pour accepter l'événement click? mais le bouton peut déclencher l'événement dans le même z-index.

dans mon code, il n'y a pas de toile. Il n'y a que Grille, Chemin, Ellipse seulement.

Répondre

0

J'ai ajouté un événement de clic avec Interaction.Behavior. Le bouton fonctionne bien. mais Ellipse ne tire jamais l'événement. Pourquoi ?

Le Ellipse n'a pas l'événement Click comme Button. Donc, le Command ne sera pas exécuté. Pour votre besoin, vous pouvez observer PointerPressed événement d'Ellipse comme le code suivant. Lorsque le point est enfoncé dans l'Ellipse, la commande dans le code derrière sera exécutée comme prévu.