以编程方式将布局元素移动到Windows Phone上的另一个布局元素

时间:2013-06-11 10:29:19

标签: windows-phone

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

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

2 个答案:

答案 0 :(得分:0)

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

yourTextBox.SetValue(Grid.RowProperty, 1);

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

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

yourSourceContainer.Children.Remove(yourTextBox);
yourTargetContainer.Children.Add(yourTextBox);

答案 1 :(得分: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);