如果我是有一个2行的Grid,第一行是TextBox,第二行是。图像:在Windows Phone上是否可以以编程方式将textBox移动到第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);