c# - 是否可以将 Canvas 中的形状添加到二维数组,其中二维数组位置是下方的网格控件单元格的位置?

标签 c# silverlight canvas grid multidimensional-array

我知道这似乎是一个完全乱七八糟的问题,但这里是:

我基本上是在 silverlight 中创建一个模拟作为编程练习。 我有一个半不透明的 Canvas ,位于 40 行 30 列的网格之上。我可以将 Canvas 对象放入网格单元中以更改颜色以表示水、草、沙子或其他任何东西。 然而,我让我的 AI 代理存在于 Canvas 上,这样它们就可以在表面上平滑移动,而不是像网格那样以锯齿状移动。

我只是想知道是否有人有过访问 Canvas 和网格之间的相对坐标的经验。我的网格单元格是 5x5,其中 Canvas 点显然是 0 到 400 之间的个位数。我只是想找到一种方法来收集 Canvas 上相对于它们的网格位置的所有形状。

请随时提出更多问题,我知道这不是很清楚。 我们将不胜感激。

最佳答案

如果您为代理提供 RenderTransform,您仍然可以使用网格。这样他们仍然在您的网格内并且可以自由移动。

关于c# - 是否可以将 Canvas 中的形状添加到二维数组,其中二维数组位置是下方的网格控件单元格的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6357488/

相关文章:

Javascript:在 Chrome 中将 Canvas 转换为图像

c# - 修复 C# 中的数组数组(不安全代码)

ruby-on-rails - 使用 Silverlight 和 Ruby on Rails 构建社交网站有意义吗?

c# - 打开文件对话框中的strFileName

c# - 自动展开 RadGridView 新增行的 RowDetails

wpf - 是否对各种 XAML 方言之间的差异有一个很好的概述

javascript - 通过 JavaScript 插入 HTML

javascript - 如何为二维数组中的元素提供唯一 ID?

c# - 在 C# 中的特定时间后退出循环

c# - 如何在 NopCommerce 中实现 Action 过滤器