gpt4 book ai didi

xaml - 滚动到 ScrollViewer 结尾的最佳方式

转载 作者:行者123 更新时间:2023-12-03 21:08:22 26 4
gpt4 key购买 nike

目前,当我添加新项目时,我让代码自动滚动到末尾的唯一方法如下:

XAML:

<ScrollViewer x:Name="chatViewScroller" HorizontalAlignment="Left" Height="201" Margin="0,32,0,0" VerticalAlignment="Top" Width="475" Background="#7FFFFFFF">
<StackPanel x:Name="chatViewContent" />
</ScrollViewer>

代码:
                chatViewContent.Children.Add(
new TextBlock() {
Text = text,
FontSize = 18,
TextWrapping = Windows.UI.Xaml.TextWrapping.Wrap,
Margin = new Thickness(10, 3, 10, 0),
Foreground = new Windows.UI.Xaml.Media.SolidColorBrush(
isServerMessage ? Windows.UI.Colors.Purple : Windows.UI.Colors.Black)
});
await Task.Delay(10);
chatViewScroller.ScrollToVerticalOffset(chatViewScroller.ScrollableHeight);

这是公认的做法吗?我是否必须等待一些随机的时间?

最佳答案

使用 ActualHeight 对我不起作用(我还没有弄清楚原因) - 但是像这样使用 ScrollableHeight 就成功了:

// adding item to ItemsControl...
// ...
_scrollViewer.UpdateLayout();
_scrollViewer.ScrollToVerticalOffset(_scrollViewer.ScrollableHeight);

关于xaml - 滚动到 ScrollViewer 结尾的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11171456/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com