在网格中的给定屏幕位置查找单元格
本文关键字:屏幕 位置 查找 单元格 网格 | 更新日期: 2023-09-27 18:30:10
我正在创建一个基于网格布局的简单游戏。我制作了20行x 20列的网格,其中一些网格由一些FrameworkElement填充。我想做拖动&他们的下降机制,我想知道如何找到行&按鼠标位置显示网格的列。
知道吗?
好的,我找到了这样的函数:
public Cell GetCell(Point position)
{
Cell cell = new Cell();
cell.Column = -1;
double total = 0;
foreach (var column in boardGrid.ColumnDefinitions)
{
if(position.X < total)
{
break;
}
cell.Column++;
total += column.ActualWidth;
}
cell.Row = -1;
total = 0;
foreach (var row in boardGrid.RowDefinitions)
{
if(position.Y < total)
{
break;
}
cell.Row++;
total += row.ActualHeight;
}
return cell;
}