如何动态地(从代码)在 wpf 中创建 table,其中每个 table 单元格都是一个文本框

How to create a table in wpf dinamically (from code) in which each table cell is a textBox

正如标题所说,我想创建一个 table,其中每个 table 单元格都是一个文本框。然后我想将这些文本框的值保存在一个文件中。

我该怎么做?

我不知道你的 table 的数据源是什么以及 table 应该是什么样子,但假设你有一个 window 其中有名为 MyGrid 的网格

您可以动态添加行和列并使table

    public void MakeTable(int columns, int rows)
    {
        for (int x = 0; x < columns; x++)
            MyGrid.ColumnDefinitions.Add(new ColumnDefinition());
        for (int y = 0; y < rows; y++)
        {
            RowDefinition r = new RowDefinition();
            r.Height = GridLength.Auto;
            MyGrid.RowDefinitions.Add(r);
        }

        for (int x = 0; x < columns; x++)
        {
            for (int y = 0; y < rows; y++)
            {
                TextBox tb = new TextBox();                 
                tb.Text = "my text for " + x + " " + y;
                Grid.SetColumn(tb, x);
                Grid.SetRow(tb, y);
                MyGrid.Children.Add(tb);
            }
        }
    }

    public string TableValue(int column, int row, int rows)
    {
        int i = row + column * rows;
        return ((TextBox)MyGrid.Children[i]).Text;
    }

函数调用可以像这样:

        int columns = 2;
        int rows = 3;

        MakeTable(columns, rows); //prepare table

        string s = TableValue(0, 2, rows);  //read string from coordinates

例如,要将数据保存到文本文件中,您必须定义一些规则。例如,在文件顶部写上列数和行数,然后是单个单元格。重新加载时了解内容。或者在列之间放置制表符...