【发布时间】:2016-09-27 12:53:38
【问题描述】:
你好 SO 社区 :o)
首先,对不起我的英语,我知道这并不完美,但我努力改进它。 :)
我目前正在使用 WPF 中的 Telerik 框架。
这是代码(我不得不更改我的变量名称)
<telerik:RadGridView Name="GridName" IsPropertyChangedAggregationEnabled="True" EnableColumnGroupsVirtualization="True" EnableColumnVirtualization="True" ItemsSource="{Binding PagedSource, ElementName=PagerName}" AutoGenerateColumns="False" IsBusy="{Binding IsLoading}" SelectedItem="{Binding SelectedIsinFromGrid}" Grid.Row="0">
<telerik:RadGridView.Resources>
<Style TargetType="{x:Type telerik:GridViewRow}" BasedOn="{StaticResource {x:Type telerik:GridViewRow}}" >
<Style.Triggers>
<DataTrigger Binding="{Binding Status}" Value="ACTIVE">
<Setter Property="Background" Value="{StaticResource GreenRessourceColor}" />
</DataTrigger>
<DataTrigger Binding="{Binding Status}" Value="DISABLE">
<Setter Property="Background" Value="{StaticResource RedRessourceColor}" />
</DataTrigger>
<DataTrigger Binding="{Binding Status}" Value="UNKNOW">
<Setter Property="Background" Value="{StaticResource YellowRessourceColor}" />
</DataTrigger>
</Style.Triggers>
</Style>
</telerik:RadGridView.Resources>
<telerik:RadGridView.Columns>
<telerik:GridViewDataColumn Header="Header1" DataMemberBinding="{Binding Item1}" />
<telerik:GridViewDataColumn Header="Header2" DataMemberBinding="{Binding Item2}"/>
<telerik:GridViewDataColumn Header="Header3" DataMemberBinding="{Binding Item3}"/>
<telerik:GridViewDataColumn Header="Header4" DataMemberBinding="{Binding Status}"/>
</telerik:RadGridView.Columns>
</telerik:RadGridView>
<telerik:RadDataPager Name="PagerName" Style="{StaticResource CustomDataPagerStyle}" Grid.Row="1" Source="{Binding ItemsListToDisplay}" PageSize="100" IsTotalItemCountFixed="False" />
错误:
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='Telerik.Windows.Controls.GridView.GridViewRow', AncestorLevel='1''. BindingExpression:Path=IsPinned; DataItem=null; target element is 'GridViewPinButton' (Name=''); target property is 'IsPinned' (type 'Boolean')
网格、分页器和数据以正确的颜色很好地显示,除了我的 VS 输出中有这个错误。
有关此代码用法的更多信息。
此代码在 UserControl 中使用,此 userControl 包装在 RadPane 中,然后注入到 RadPaneGroup 中。
我为什么要这样做?因为我使用 prism 将我的模块作为 RadPane 动态注入到 mainRegion 中
仅当我将窗格移动到 RadPaneGroup 之外时才会发生错误
这就像我搞砸了 RadGridView styleRow。
如您所见,我没有直接使用 IsPinned 属性。
有什么想法吗?
【问题讨论】:
-
这个特殊的错误对于 Telerik 的 WPF 控件非常常见,我在不同的控件中多次看到它,而不仅仅是寻呼机。我建议询问他们对此的支持,或者只是在他们的论坛上写。
-
我刚刚做到了 :) telerik.com/forums/…
标签: c# wpf telerik radgridview raddatapager