WPF Datagrid水平滚动条绑定错误

时间:2015-07-08 13:06:16

标签: c# .net wpf mvvm datagrid

我在我的应用程序中使用自定义样式的WPF Datagrid。当我在DataGrid中水平滚动时,我收到以下绑定错误:

  

BindingExpression生成的值对目标属性无效。值=' -0.0857142857142854' BindingExpression:路径= CellsPanelHorizo​​ntalOffset;的DataItem ='数据网格' (名称=' grdSizes&#39);目标元素是'按钮' (名称='&#39);目标属性是'宽度' (键入' Double')

现在我明白这意味着一个按钮从CellsPanelHorizo​​ntalOffset获得负值。不过,我不知道是什么产生了这种负面价值。我没有在我的重写DataGrid中进行任何偏移计算。

我也有这个

<Button
    Name="btnLeftColSelectAll"
    Command="{x:Static g:DataGrid.SelectAllCommand}"
    Width="{Binding CellsPanelHorizontalOffset, RelativeSource={RelativeSource AncestorType={x:Type g:DataGrid}}}"
    Template="{StaticResource SelectAllButtonTemplate}"
    Focusable="false"
    Visibility="{Binding HeadersVisibility, Converter={x:Static g:DataGrid.HeadersVisibilityConverter}, ConverterParameter={x:Static g:DataGridHeadersVisibility.All}, RelativeSource={RelativeSource AncestorType={x:Type g:DataGrid}}}" />

我的自定义DataGrid样式中的按钮。这不会产生宽度的任何绑定问题,尽管它绑定到相同的属性。我甚至不知道哪个按钮会导致问题,因为这是我的应用程序中唯一一个宽度绑定到该属性的按钮。

另一个注意事项:此绑定错误仅在我单击滚动条并将其拖动时生成。当我使用向右和向左箭头按钮滚动时,一切都很好。

任何想法是什么导致了这个问题?这是一些WPF / .NET错误吗?

0 个答案:

没有答案