提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
使用场景
wpf项目中有个datagrid列表,当数据出现垂直滚动条时拉倒最下方,现在当数据刷新时需要自动返回到数据最上方。
提示:以下是本篇文章正文内容,下面案例可供参考
上代码
控制部分(加在需要滚动的地方)文章来源:https://www.toymoban.com/news/detail-560248.html
//控制滚动条的位置到最上方
ScrollViewer scrollViewer = GetVisualChild<ScrollViewer>(你的控件名字);
if (scrollViewer != null)
{
scrollViewer.ScrollToTop();
}
获取VisualChild(需要添加 using System.Windows.Media;)文章来源地址https://www.toymoban.com/news/detail-560248.html
private static T GetVisualChild<T>(DependencyObject parent) where T : Visual
{
T child = default(T);
int numVisuals = VisualTreeHelper.GetChildrenCount(parent);
for (int i = 0; i < numVisuals; i++)
{
Visual v = (Visual)VisualTreeHelper.GetChild(parent, i);
child = v as T;
if (child == null)
{
child = GetVisualChild<T>(v);
}
if (child != null)
{
break;
}
}
return child;
}
到了这里,关于wpf控制垂直滚动条到最上方的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!