我有一个DataGrid
可变维度依赖于screen-res.我需要知道用户可以看到多少行.这是我的代码:
uint VisibleRows = 0;
var TicketGrid = (DataGrid) MyWindow.FindName("TicketGrid");
foreach(var Item in TicketGrid.Items) {
var Row = (DataGridRow) TicketGrid.ItemContainerGenerator.ContainerFromItem(Item);
if(Row != null && Row.IsVisible) {
VisibleRows++;
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用以下代码来测试变量:
MessageBox.Show(String.Format("{0} of {1} rows visible", VisibleRows, TicketGrid.Items.Count));
Run Code Online (Sandbox Code Playgroud)
我不能只是- 1
,因为在添加了一定数量之后它才是不正确的.我无法检查> 10
,因为尺寸是可变的.
我怎样才能解决这个问题?