Silverlight:将RowDetailsTemplate宽度限制为其父DataGrid的宽度

时间:2009-08-07 17:07:58

标签: silverlight-3.0 datagrid

我想将我的RowDetailsTemplate的宽度绑定到我的DataGrid的宽度,以便行详细信息不会被滚动条包围。

这是问题所在: alt text

请注意,RowDetailsTemplate包含必须滚动到视图中的隐藏内容 - 这很糟糕。用户必须拖动DataGrid最底部的滚动条才能看到行的其余部分 - 这非常不直观。我真的希望行细节布局其内容,以便不需要滚动。

有什么建议吗?

谢谢,
查尔斯

2 个答案:

答案 0 :(得分:2)

我确实找到了WPF中类似问题的解决方案,你可以在这里找到它:DataGrid RowDetails Width problem

我不知道它是否适用于silverlight,但试一试。

  

这里的答案感觉就像一个解决方法所以我做了一些研究并做到了   在Telerik论坛上找到解决方案,因为我们使用他们的   RadGridView。结果证明该解决方案也适用于DataGrid。

     

关键是设置ScrollViewer.Horizo​​ntalScrollBarVisibility   属性为Disabled,请参见下面的示例。

<DataGrid ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<DataGrid.RowDetailsTemplate>
    <DataTemplate>
        <Border>
            <TextBlock Foreground="White" Text="{Binding RowDetails}"
                       TextWrapping="Wrap"/>
        </Border>
    </DataTemplate>
</DataGrid.RowDetailsTemplate> </DataGrid>

答案 1 :(得分:1)

AreRowDetailsFrozen上的DataGrid属性设置为true可解决我的问题。例如:

<data:DataGrid AreRowDetailsFrozen="True" />