Связывание (конвертер) в коде позади

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

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

1 ответ

Решение

Я не знаю, каков источник привязки или как выглядит круговая диаграмма 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

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

Другие вопросы по тегам