1

当我编写 Controls.Add() 以在窗口中动态创建控件时,它表示控件未定义或存在于窗口类中。换句话说,“控件”没有被识别为类或命令,因此代码不起作用。任何建议将不胜感激。

我想动态创建一个窗口并向其添加一个文本框。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;

 public partial class Window2 : Window
    {
        public Window2()
        {
             InitializeComponent();
        } 

private void button2_Click(object sender, RoutedEventArgs e)
        {
            Window f1 = new Window();
            f1.Show();
            TextBox tb = new TextBox();
            tb.Width = 150;
            tb.Height = 60;
            tb.Name = "TextBoxID";
            tb.Text = "This is textbox first data";
            Controls.Add(f1);  


        }
    }
4

1 回答 1

2

如果您查看Window Class的文档,您会发现它没有这样的属性。它有一个Content属性,您可以将其设置为一个控件。因此,如果要添加多个控件,则必须将窗口的Content属性设置为多项面板,例如 StackPanel 或 Grid,然后将控件添加到面板中。

面板

于 2012-09-08T23:16:56.273 回答