在 WPF 中访问 DataGrid 的 ScrollView 属性
Posted
技术标签:
【中文标题】在 WPF 中访问 DataGrid 的 ScrollView 属性【英文标题】:Access ScrollView properties of a DataGrid in WPF 【发布时间】:2012-04-03 22:58:12 【问题描述】:是否可以访问我在数据网格的属性列表中找不到的水平偏移量?
谢谢
【问题讨论】:
【参考方案1】:只需在 XAML 中命名基本控件(例如 ListView),然后在后面的代码中按名称访问它。
【讨论】:
【参考方案2】:在 XAML 中
<DataGrid Name="dataGrid1" ..... />
如果要访问 HorizontalOffset,则需要访问 Datagrid 中包含的 ScrollViewer
访问 ScrollViewer 的一种可能方法是
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(dataGrid1); i++)
if (VisualTreeHelper.GetChild(dataGrid1, i) is ScrollViewer)
ScrollViewer scroll =
(ScrollViewer)(VisualTreeHelper.GetChild(dataGrid1, i));
Console.WriteLine(scroll.HorizontalOffset);
注意scroll.HorizontalOffset
是只读的
【讨论】:
这是您要找的吗? 我会试试的。我知道该属性是只读的,但是有一个名为 ScrollToHorizontalOffset 的函数可以让我修改它。 不完全是这样,但足够接近。 Datagrid 确实有一个可视子项,但它是一个边框,而边框又具有 ScrollViewer,因此使用了双循环并且它现在可以工作了。 @Klaus78 伙计,你能看看我的问题,它几乎和这个一样,我试过你的代码,但它对我不起作用:(***.com/questions/39790008/…以上是关于在 WPF 中访问 DataGrid 的 ScrollView 属性的主要内容,如果未能解决你的问题,请参考以下文章
在wpf中怎么获取datagrid某行某列的值啊?急!跪求!