按钮单击事件以将TextBox添加到网格

时间:2015-04-06 19:42:41

标签: c# silverlight

问题出在哪里? 我想动态地向网格添加一个新的文本框。 (Silverlight的)

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        TextBox o = new TextBox();
        o.SetValue(Canvas.TopProperty, 160); // margin top, I hope.
        o.SetValue(Canvas.LeftProperty, 40); // margin left, I hope.
        o.Height = 31;
        o.Width = 140;
        o.HorizontalAlignment= HorizontalAlignment.Left;
        o.TextWrapping =  TextWrapping.Wrap;
        o.VerticalAlignment = VerticalAlignment.Top;
        LayoutRoot.Children.Add(o);
    }

非常感谢你。 此致,Daniele。

1 个答案:

答案 0 :(得分:0)

我认为LayoutRoot是XAML中的一个网格:

<Grid Name="LayoutRoot">

在这种情况下,您应该删除Canvas.TopCanvas.Left的分配,并设置Margin的{​​{1}}:

TextBox

TextBox o = new TextBox(); o.Margin = new Thickness(40, 160, 0, 0); //... - 属性仅在Canvas.容器中生效。您应该使用相应的方法在codebehind中设置附加属性:

Canvas
相关问题