RoutedPropertyChangedEventHandler<T> Délégué

Définition

Représente les méthodes qui gèrent différents événements routés qui effectuent le suivi des modifications de valeurs de propriétés.

generic <typename T>
public delegate void RoutedPropertyChangedEventHandler(System::Object ^ sender, RoutedPropertyChangedEventArgs<T> ^ e);
public delegate void RoutedPropertyChangedEventHandler<T>(object sender, RoutedPropertyChangedEventArgs<T> e);
type RoutedPropertyChangedEventHandler<'T> = delegate of obj * RoutedPropertyChangedEventArgs<'T> -> unit
Public Delegate Sub RoutedPropertyChangedEventHandler(Of T)(sender As Object, e As RoutedPropertyChangedEventArgs(Of T))

Paramètres de type

T

Type de la valeur de propriété où les modifications de valeur sont signalées.

Paramètres

sender
Object

Objet où le gestionnaire d’événements est attaché.

e
RoutedPropertyChangedEventArgs<T>

Données d'événement. Les définitions d'événement spécifiques contraignent RoutedPropertyChangedEventArgs<T> à un type, avec le paramètre de type de la contrainte correspondant à la contrainte de paramètre de type pour une implémentation de délégué.

Exemples

L’exemple suivant définit et attache une méthode de gestionnaire pour l’événement ValueChanged .

Le gestionnaire est basé sur RoutedPropertyChangedEventHandler<T>, et est défini dans le deuxième segment de l’exemple de code, avec le paramètre de type du générique limité à Double.

Slider childrenCountSlider = (Slider)LogicalTreeHelper.FindLogicalNode(myWindow, "ChildrenCountSlider");
childrenCountSlider.ValueChanged += new RoutedPropertyChangedEventHandler<double>(OnChildrenCountChanged);
Dim childrenCountSlider As Slider = CType(LogicalTreeHelper.FindLogicalNode(myWindow, "ChildrenCountSlider"), Slider)
AddHandler childrenCountSlider.ValueChanged, AddressOf OnChildrenCountChanged
private void OnChildrenCountChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
    int childrenCount = (int)Math.Floor(e.NewValue + 0.5);

    //  Update the children count...
    AutoIndexingGrid g = (AutoIndexingGrid)LogicalTreeHelper.FindLogicalNode(myWindow, "TargetGrid");
    while (g.Children.Count < childrenCount)
    {
        Control c = new Control();
        g.Children.Add(c);
        c.Style = (Style)c.FindResource("ImageWithBorder");
    }
    while (g.Children.Count > childrenCount)
    {
        g.Children.Remove(g.Children[g.Children.Count - 1]);
    }


    //  Update TextBlock element displaying the count...
    TextBlock t = (TextBlock)LogicalTreeHelper.FindLogicalNode(myWindow, "ChildrenCountDisplay");
    t.Text = childrenCount.ToString();
}
Private Sub OnChildrenCountChanged(ByVal sender As Object, ByVal e As RoutedPropertyChangedEventArgs(Of Double))
    Dim childrenCount As Integer = CInt(Fix(Math.Floor(e.NewValue + 0.5)))

    '  Update the children count...
    Dim g As AutoIndexingGrid = CType(LogicalTreeHelper.FindLogicalNode(myWindow, "TargetGrid"), AutoIndexingGrid)
    Do While g.Children.Count < childrenCount
        Dim c As New Control()
        g.Children.Add(c)
        c.Style = CType(c.FindResource("ImageWithBorder"), Style)
    Loop
    Do While g.Children.Count > childrenCount
        g.Children.Remove(g.Children(g.Children.Count - 1))
    Loop


    '  Update TextBlock element displaying the count...
    Dim t As TextBlock = CType(LogicalTreeHelper.FindLogicalNode(myWindow, "ChildrenCountDisplay"), TextBlock)
    t.Text = childrenCount.ToString()
End Sub

Cet exemple particulier n’utilise pas la caractéristique d’événement routé de l’événement ; l’événement est géré sur le même élément sur lequel il est déclenché. Mais ce n’est pas toujours le cas. Pour un événement routé, il est possible que la source de l’événement soit un objet différent de l’objet où le gestionnaire est attaché.

Remarques

Exemples d’événements qui utilisent des délégués contraints de type basés sur RoutedPropertyChangedEventHandler<T> include TreeView.SelectedItemChanged et RangeBase.ValueChanged.

Méthodes d’extension

GetMethodInfo(Delegate)

Obtient un objet qui représente la méthode représentée par le délégué spécifié.

S’applique à

Voir aussi