如何从ValueConverter返回stackpanel元素并使其正确显示

时间:2017-06-05 22:44:54

标签: wpf data-binding ivalueconverter

我有一个我绑定的数据网格,我有一个valueConverter,我发送一个对象,希望返回一个带有一些文本的图像(放在一个堆栈面板内)。但是,在显示所有我在gridview单元格中看到的是System.Windows.Control.StackPanel。

这是xaml。我正确绑定了GrieView ItemsSource,进入转换器的值是正确的。

<telerik:GridViewDataColumn DataMemberBinding="{Binding Converter={StaticResource MyConverter}}" IsReadOnly="True">
 <telerik:GridViewDataColumn.Header>
  <TextBlock FontWeight="Bold" Text="Text" />
 </telerik:GridViewDataColumn.Header>
</telerik:GridViewDataColumn>

这基本上就是转换器的作用。

StackPanel stackpanel = new StackPanel();
stackpanel.Orientation = Orientation.Horizontal;
stackpanel.Children.Add(Adds a UI element);

TextBlock textBlock = new TextBlock();
textBlock.Text = appendingText;
stackpanel.Children.Add(textBlock);
return stackpanel;

但在gridviewCell中显示的只是一个字符串,读取System.Windows.Controls.StackPanel。任何帮助将不胜感激,谢谢!

1 个答案:

答案 0 :(得分:0)

尝试使用GridViewColumn并使用您的转换器绑定Content的{​​{1}}属性:

ContentControl