今天在操作DataGrid时发现一个问题,当展示的数据已经超出了DataGrid的高度时,虽然会有滚动条出现,但是新增加的数据却没有在表格中显示,需要拖动滚动条之最低端才能够查看到刚刚新增的数据。

问题:当显示数据超出DataGrid显示的高度时,如何在添加数据后能自动查看该数据,而不需要拖动滚动条,如图示:

图中添加完编号为10的商品时,自动选择这一行并将滚动条自动显示最底端显示最后添加的数据。

解法:1:添加数据后添加的数据在最顶端显示,这样就不需要控制滚动条了,只需要控制数据绑定集合中的位置(想实现的朋友可以自己尝试下,重点解说第二种解法)

   2:添加数据后滚动条自动移动到最底端,显示最后添加的数据,并选中该数据

解法2代码

void btnProduct_Click(object sender, RoutedEventArgs e)
{

  OrderDetail item = new OrderDetail();//绑定对象中的明细(即列表中的一行数据)

  item.OrderDetail_Count = count != 0 ? count : string.IsNullOrEmpty(txtCount.Text) ? 1 : Convert.ToInt32(this.txtCount.Text);
  item.OrderDetail_ID = Guid.NewGuid();
  item.OrderDetail_Index = order.Items.Count + 1;

  //……各个item属性的代码省略,下面直接上关键代码

  order.Items.Add(item);
  this.dgOrder.ScrollIntoView(item, this.dgOrder.Columns[0]);//移动到刚刚添加的数据
  this.dgOrder.SelectedItem = item;//默认选择该数据

  this.dgOrder.ItemsSource = order.Items;//绑定数据源,order.Items是一个个OrderDetail对象的集合

}

转载于:https://www.cnblogs.com/aijie/archive/2012/03/30/2424983.html

Silverlight DataGrid超出列表高度时自动滚屏相关推荐

  1. echart 时间滚动_基于 ECharts 封装甘特图并实现自动滚屏

    项目中需要用到甘特图组件,之前的图表一直基于 EChart 开发,但 EChart 本身没有甘特图组件,需要自行封装 经过一番鏖战,终于完成了... 我在工程中参考 v-chart 封装了一套图表组件 ...

  2. Android拖动实现(一个流畅的拖动排序DragSortGridView,自动滚屏)

    https://github.com/huxq17/HandyGridView 先上效果 流畅效果超越了网易新闻和UC浏览器的栏目收藏.gif图和实际效果有差距 1.拖拽可以移动item,并且其他it ...

  3. 帆软报表调用python脚本_帆软报表(finereport)实现自动滚屏效果

    例如Demo:IOS平台年度数据报表. 展示内容丰富,一个页面中存在多个图表.内容,超出了浏览器窗口的大小导致内容展示不全. 为了能够预览这个报表的全部内容,可以使用JS滚屏效果来实现. 操作步骤: ...

  4. jQuery实现 自动滚屏操作

    实现自动滚屏思路: 1.滚屏即:文本的往上移动一段距离: 2.那么我们使文本每过一段时间就往上移动一段固定距离,就可实现滚屏: 3.直到文本底部出现在浏览器窗口中,专业点就是 文本移动的距离 + 浏览 ...

  5. VC编辑框(EDIT)的自动换行、自动滚屏 、到指定行数自动清空

    From: http://getyoureyes.blog.163.com/blog/static/101716622201083081914305/ 经过多次测试,总结出VC编辑框(EDIT)的自动 ...

  6. 大屏html自动滚动,Automatic Scrolling Tabs - 网页自动滚屏

    Automatic Scrolling Tabs插件背景简介 最近有网友在网上提问求一个脱离鼠标仍可网页自动向下滚动,然后鼠标去操作其他东西的插件,最好能设置滚动速度的.之前我们会推荐一些鼠标手势插件 ...

  7. MFC EDIT的使用———自动滚屏

    在自动换行设置的时候,要在EDIT控件的属性中选中"multiline"的属性和Auto_HScroll.Vertical scroll. 经过多次测试,总结出VC编辑框(EDIT)的自动换 ...

  8. Qt4小技巧——QTextEdit自动滚屏

    CuteQt Blog » Blog Archive » Qt4小技巧--QTextEdit自动滚屏 Qt4小技巧--QTextEdit自动滚屏   本站所有文章由本站和原作者保留一切权力,仅在保留本 ...

  9. 关于video标签,禁止点击播放时自动全屏,和video出现诡异窗口重叠

    禁止点击video时自动全屏问题:加上x5-playsinline属性或者x5-video-player-type="h5",都可以禁用全屏,其中x5-video-player-t ...

最新文章

  1. php 时间转换编号,PHP 时间的格式转换
  2. Hard commits, soft commits and transaction logs
  3. IE9上特定网站不断崩溃的故障
  4. 三十六、数据仓库的实现
  5. 带你自学Python系列(十一):Python函数的用法(一)
  6. Python面向对象的三大特征(封装、继承、多态)
  7. 解决:未能找到 CodeDom 提供程序类型 Microsoft.VJSharp.VJSharpCodeProvider
  8. CMMI3 和 CMMI 4
  9. 如何清空matlab命令窗口,matlab如何清空命令窗口中的内容
  10. Re10:读论文 Are we really making much progress? Revisiting, benchmarking, and refining heterogeneous gr
  11. Windows系统的正版与盗版
  12. uni-app分分钟解决苹果X以上型号黑线条兼容问题
  13. 对于跳过Google应用SetupWizard.apk以及其他设备软件包名
  14. python打包程序在win10不能运行、点击无反应_win10双击安装包没反应,win10运行exe无反应...
  15. 浏览器怎么显示php文件夹,如何使用浏览器打开php文件?
  16. 工业POE交换机出现不供电怎么办?
  17. 继 Facebook 开源 PyTorch3D 后,谷歌开源 TensorFlow 3D 场景理解库
  18. 畅想未来计算机英语作文带翻译,“未来畅想”英语作文带翻译
  19. 【财经期刊FM-Radio|2020年11月03日】
  20. d191虚拟服务器,dlink无线路由器的端口映射设置教程

热门文章

  1. Codeforces Round 542 (Div. 2)
  2. sourcetree回退已推送的代码
  3. Django与数据库操作
  4. JPA关系映射之one-to-many和many-to-one
  5. 微软发话:Win10杀毒软件要优先选它
  6. 不展现报表实现对报表的打印导出
  7. android SDK manager 无法获取更新版本列表
  8. JSP 9 大内置对象详解
  9. 艾伟:老赵谈IL(3):IL可以看到的东西,其实大都也可以用C#来发现
  10. 第二章 如何学习Linux(鸟哥的Linux私房菜基础学习篇)