【发布时间】:2017-06-05 22:44:54
【问题描述】:
我有一个要绑定的数据网格,并且我有一个 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 的字符串。任何帮助将不胜感激,谢谢!
【问题讨论】:
-
GridViewDataColumn 不知道如何将 StackPanel 解释为“数据”,而只是调用其 ToString 方法。您可能应该使用带有适当 CellTemplate 的基本 GridViewColumn。
标签: wpf data-binding ivalueconverter