Telerik RadGridView + Style + RadDataPager =找不到绑定IsPinned的源代码

时间:2016-09-27 12:53:38

标签: c# wpf telerik radgridview raddatapager

你好SO社区:o)

首先,我很抱歉我的英语,我知道这并不完美,但我会挣扎以改善它。 :)

我目前正在使用WPF中的telerik Framework。

这是代码(我必须更改我的变量名称)

 <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。

为什么我这样做?因为我使用棱镜将我的模块动态注入mainRegion作为RadPane

仅当我将窗格移到RadPaneGroup外部时才会出现错误

就像我搞砸了RadGridView styleRow。

如您所见,我没有直接使用IsPinned属性。

任何想法?

1 个答案:

答案 0 :(得分:0)

我在telerik论坛上问了同样的问题。

简短的回答是:将RadGridView的GroupRenderMode设置为Flat

更多详情:

将此问题记录为Telerik UI WPF错误。

要获取有关此错误的更多信息和代码以及如何重现,请点击此链接:Telerik Forum Binding error thread

要关注错误报告:Bug report

telerik雇用的答案是:

  

我能够在我的最终成功重现错误,并在我们的反馈门户中记录了一个新的错误报告,您可以订阅该报告以获得有关其状态变化的通知。为了感谢您的帮助,我已经授予您一些Telerik积分。

     

目前,您可以将RadGridView的GroupRenderMode设置为Flat,以避免这些绑定错误。

     

此致   迪莉兰特拉伊科夫   Telerik by Progress