Nasıl yapılır: ThicknessConverter Nesnesi Kullanma

Örnek

Bu örnek, bir örneğinin nasıl oluşturulacağını ThicknessConverter ve bir Kenarlığın kalınlığını değiştirmek için nasıl kullanılacağını gösterir.

Örnek, çağrılan özel bir yöntemi tanımlar changeThickness ; Bu yöntem, ilk olarak bir öğesinin içeriğini ListBoxItem ayrı bir EXTENSIBLE APPLICATION MARKUP Language (XAML) dosyasında tanımlandığı şekilde, bir örneğine, Thickness daha sonra içeriği bir öğesine dönüştürür String . Bu yöntem ListBoxItemThicknessConverter öğesini bir nesnesine geçirir ve ' Content a bir ListBoxItem örneğine dönüştürür Thickness . Bu değer daha sonra öğesinin özelliğinin değeri olarak geri geçirilir BorderThicknessBorder .

Bu örnek çalışmaz.

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

Ayrıca bkz.