Condividi tramite


Procedura: utilizzare un oggetto ThicknessConverter

Esempio

In questo esempio viene illustrato come creare un'istanza di ThicknessConverter e usarla per modificare lo spessore di un bordo.

L'esempio definisce un metodo personalizzato denominato changeThickness. Questo metodo converte innanzitutto il contenuto di un ListBoxItemoggetto , come definito in un file XAML (Extensible Application Markup Language) separato, in un'istanza di Thicknesse successivamente converte il contenuto in un oggetto String. Questo metodo passa l'oggetto ListBoxItem a un ThicknessConverter oggetto , che converte l'oggetto di in ListBoxItem un'istanza Content di Thickness. Questo valore viene quindi passato di nuovo come valore della BorderThickness proprietà dell'oggetto Border.

Questo esempio non viene eseguito.

private void changeThickness(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    ThicknessConverter myThicknessConverter = new ThicknessConverter();
    Thickness th1 = (Thickness)myThicknessConverter.ConvertFromString(li.Content.ToString());
    border1.BorderThickness = th1;
    bThickness.Text = "Border.BorderThickness =" + li.Content.ToString();
}
Private Sub changeThickness(ByVal sender As Object, ByVal args As SelectionChangedEventArgs)

    Dim li As ListBoxItem = CType(CType(sender, ListBox).SelectedItem, ListBoxItem)
    Dim myThicknessConverter As System.Windows.ThicknessConverter = New System.Windows.ThicknessConverter()
    Dim th1 As Thickness = CType(myThicknessConverter.ConvertFromString(li.Content.ToString()), Thickness)
    border1.BorderThickness = th1
    bThickness.Text = "Border.BorderThickness =" + li.Content.ToString()
End Sub

Vedi anche