Datagrid UI 虚拟化,最初显示在底部的最后一项

我有一个DataGridwith ids ,它是从上到下按升序显示的。然而,最后一个 ids(hightest number) 必须最初显示,但仍然在DataGrid. 这意味着您必须滚动到顶部以显示旧 ID。

是否可以在虚拟化仍然完好无损的情况下做到这一点?

我们正在使用 sfdatagrid(syncfusion)。但是,如果任何其他网格(包括 wpf 原生网格)包含此内容,我可以调查一下


BIG阳
浏览 210回答 1
1回答

FFIVE

是否可以在虚拟化仍然完好无损的情况下做到这一点?是的。至少使用内置DataGrid控件。这只是在创建任何容器之前滚动到底部的问题。请参考以下示例代码:public partial class MainWindow : Window{&nbsp; &nbsp; public MainWindow()&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; InitializeComponent();&nbsp; &nbsp; &nbsp; &nbsp; numberGrid.ItemsSource = Enumerable.Range(1, 100);&nbsp; &nbsp; &nbsp; &nbsp; numberGrid.ScrollIntoView(numberGrid.Items[numberGrid.Items.Count - 1]);&nbsp; &nbsp; }&nbsp; &nbsp; int n = 0;&nbsp; &nbsp; private void DataGridRow_Loaded(object sender, RoutedEventArgs e)&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; txt.Text = (n++).ToString();&nbsp; &nbsp; }}XAML:<DataGrid x:Name="dg" Height="200">&nbsp; &nbsp; <DataGrid.ItemContainerStyle>&nbsp; &nbsp; &nbsp; &nbsp; <Style TargetType="DataGridRow">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <EventSetter Event="Loaded" Handler="DataGridRow_Loaded" />&nbsp; &nbsp; &nbsp; &nbsp; </Style>&nbsp; &nbsp; </DataGrid.ItemContainerStyle>&nbsp; &nbsp; <DataGrid.Columns>&nbsp; &nbsp; &nbsp; &nbsp; <DataGridTextColumn Binding="{Binding}" />&nbsp; &nbsp; </DataGrid.Columns></DataGrid><TextBlock x:Name="txt" />可视化树中只加载了 11 个容器:
打开App,查看更多内容
随时随地看视频慕课网APP