【发布时间】:2012-06-23 17:15:58
【问题描述】:
目前,当我添加新项目时,让我的代码自动滚动到末尾的唯一方法如下:
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);
这是公认的做法吗?我必须等待一些随机的时间吗?
【问题讨论】:
-
您好,您找到更好的解决方案了吗?
-
await Dispatcher.Yield(DispatcherPriority.Input);可以工作吗?
标签: xaml scroll windows-runtime