我有一个以编程方式创建的动态 DataGrid(.NET 4,WPF)。它的标题栏是可调整大小和可移动的。此外,我有一种标尺控件,它有一些标记,当列移动时,这些标记必须移动(并准确指向列中间)。
我正在观察 DataGrid 的 ColumnReordering 和 SizeChanged 事件,并希望提供有关每列尺寸和相对于 datagrid 控件左边缘的起始位置的确切信息。有没有办法在控件中获取特定列的偏移量?
仅将所有先前列的宽度相加是不够的 - 列宽的总和小于总控件宽度(目前为 1px * 列数)。可能由于列之间的一些分隔线等而出现,如果设计师以后改变样式,这可能会改变。我可能会从这个差异中找出分隔符的宽度,并在位置计算公式中使用这个值,但是如果有一个现成的、提供控制的方法,我当然更愿意使用它。