Поделиться через


Как использовать объект ThicknessConverter

Пример

В этом примере показано, как создать экземпляр ThicknessConverter и использовать его для изменения толщины границы.

В примере определяется настраиваемый метод, называемый changeThickness; этот метод сначала преобразует содержимое ListBoxItem, как определено в отдельном файле языка разметки приложений (XAML), в экземпляр Thickness, а затем преобразует содержимое в String. Этот метод передает ListBoxItem объекту ThicknessConverter, который преобразует Content объекта ListBoxItem в экземпляр Thickness. Затем это значение передается обратно в качестве значения свойства BorderThickness, связанного с Border.

Этот пример не выполняется.

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

См. также