1

例如,如果我有一个有 2 行的网格,则第一行是 TextBox,第二行是。一个图像:在 Windows Phone 上是否可以以编程方式将文本框移动到第二行。我的目的是能够移动元素。

如果我不够清楚,请告诉我。

4

2 回答 2

0

确保先将其从旧容器中删除,否则会引发异常。

private void SwapContainers(UIElement element, Panel source, Panel destination)
{
   source.Children.Remove(element);
   destination.Children.Add(element);
}

如果你想在同一个网格中移动东西,你可以使用 SetRow 或 SetColumn:

Grid.SetRow(myElement1, 2);
Grid.SetRow(myElement2, 1);
于 2013-06-11T12:14:50.597 回答
0

您可以通过这种方式移动到同一网格中的不同行:

yourTextBox.SetValue(Grid.RowProperty, 1);

第一个参数是要设置的DependencyProperty,第二个是要设置的值。

要在不同容器之间移动,请将其从源容器的 Children elemento 中删除以添加到目标容器的 Children 元素中。例如:

yourSourceContainer.Children.Remove(yourTextBox);
yourTargetContainer.Children.Add(yourTextBox);
于 2013-06-11T11:06:17.750 回答