【问题标题】:How we can set scrollbar on last row of data grid in WPF我们如何在 WPF 中数据网格的最后一行设置滚动条
【发布时间】:2019-05-16 08:51:10
【问题描述】:

我们如何在 WPF 中数据网格的最后一行设置滚动条

                        <ScrollViewer>
                            <DataGrid Grid.Row="0"  ItemsSource="{Binding   CM.SupportMessagesList}" CanUserAddRows="False" AutoGenerateColumns="False"  HorizontalGridLinesBrush="Transparent" VerticalGridLinesBrush="Transparent"  IsReadOnly="True" Background="White" AreRowDetailsFrozen="True" RowHeaderWidth="0" ColumnHeaderHeight="0"  x:Name="SupportMessagesGrid"  >
                            <DataGrid.Columns>
                                
                            </DataGrid.Columns>
                            </DataGrid>
                        </ScrollViewer>

滚动条默认显示在数据网格的最后一行,显示最后一行。

【问题讨论】:

  • 这是一个问题还是要求?
  • 您需要将滚动条放在列控件内。通过从后端绑定其值来添加属性以有条件地显示/隐藏。

标签: wpf


【解决方案1】:
                 <!-- SizeChanged event is create in DataGrid -->

                   <ScrollViewer  x:Name="MessageScrollbar" CanContentScroll="False">

                      <DataGrid SizeChanged="SupportMessagesGrid_SizeChanged"></DataGrid>

                    </ScrollViewer>

                    <!--Code-->

                   private void SupportMessagesGrid_SizeChanged(object sender, SizeChangedEventArgs e)

                   {

                         MessageScrollbar.ScrollToVerticalOffset(e.NewSize.Height + 50); 

                        //We got actual height of DataGrid  using  e.NewSize.Height

                   }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-02
    • 2011-03-24
    • 1970-01-01
    • 2012-05-13
    • 2017-12-13
    • 1970-01-01
    • 2021-06-11
    • 1970-01-01
    相关资源
    最近更新 更多