방법: FontSizeConverter 클래스 사용
업데이트: 2007년 11월
예제
이 예제에서는FontSizeConverter 인스턴스를 만들어 이를 통해 글꼴 크기를 변경하는 방법을 보여 줍니다.
이 예제에서는 별도의 XAML(Extensible Application Markup Language) 파일에 정의되어 있는 대로 ListBoxItem의 콘텐츠를 Double 인스턴스로 변환하고 나중에 다시 String으로 변환하는 changeSize라는 사용자 지정 메서드를 정의합니다. 이 메서드는 FontSizeConverter 개체에 ListBoxItem을 전달하고 이는 ListBoxItem의 Content를 Double 인스턴스로 변환합니다. 그런 다음 이 값을 TextBlock 요소의 FontSize 속성 값으로 다시 전달합니다.
이 예제에서는 changeFamily라는 두 번째 사용자 지정 메서드도 정의합니다. 이 메서드는 ListBoxItem의 Content를 String으로 변환한 다음 이 값을 TextBlock 요소의 FontFamily 속성에 전달합니다.
이 예제는 실행되지 않습니다. 전체 샘플을 보려면 FontSizeConverter 클래스 사용 샘플을 참조하십시오.
Private Sub changeSize(ByVal sender As Object, ByVal args As SelectionChangedEventArgs)
Dim li As ListBoxItem = CType(CType(sender, ListBox).SelectedItem, ListBoxItem)
Dim myFontSizeConverter As System.Windows.FontSizeConverter = New System.Windows.FontSizeConverter()
text1.FontSize = CType(myFontSizeConverter.ConvertFromString(li.Content.ToString()), Double)
End Sub
Private Sub changeFamily(ByVal sender As Object, ByVal args As SelectionChangedEventArgs)
Dim li2 As ListBoxItem = CType(CType(sender, ListBox).SelectedItem, ListBoxItem)
text1.FontFamily = New System.Windows.Media.FontFamily(li2.Content.ToString())
End Sub
private void changeSize(object sender, SelectionChangedEventArgs args)
{
ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
FontSizeConverter myFontSizeConverter = new FontSizeConverter();
text1.FontSize = (Double)myFontSizeConverter.ConvertFromString(li.Content.ToString());
}
private void changeFamily(object sender, SelectionChangedEventArgs args)
{
ListBoxItem li2 = ((sender as ListBox).SelectedItem as ListBoxItem);
text1.FontFamily = new System.Windows.Media.FontFamily(li2.Content.ToString());
}