Привязка (преобразователь) в программном коде

<local:LabelTemp x:Key="labelTemplate"/>
        <DataTemplate x:Key="labelTemp">
            <TextBlock Text="{Binding Converter={StaticResource labelTemplate},Path=Item.Items}"/>
        </DataTemplate>

Может ли кто-нибудь помочь мне, как написать приведенный выше код Xaml в код программной части С#. Я использую этот код в LabelTemplate круговой диаграммы.


person Community    schedule 02.11.2015    source источник


Ответы (1)


Я не знаю, что такое источник привязки или как выглядит шаблон Pie Chart LabelTemplate (преобразователь). Лучшее, что я могу придумать с таким количеством информации, это следующее:

public class LabelTemplate : IValueConverter
{

    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        //...
    }

    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        //...
    }
}
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        LabelTemplate labelTemplateConverter = new LabelTemplate();
        Binding binding = new Binding("Item.Items");
        binding.Converter = labelTemplateConverter;
        txtBlock.SetBinding(TextBlock.TextProperty, binding);
    }
}

и ваш текстовый блок имеет имя txtBlock

Надеюсь, это поможет.

person ntohl    schedule 02.11.2015