我应该如何在 WPF 中表示这些记录和字段

本文关键字:记录 字段 表示 WPF 我应该 | 更新日期: 2023-09-27 18:37:08

我对C#相当陌生。如何使用多维数组?我也在使用 WPF。

为了更清楚地了解我的问题,这是我正在尝试做的:

我有一个需要存储大约 200 条"记录"的数组,每条记录都有三个字段,用户使用文本框输入了这些字段。所以我认为这就是你设置数组的方式:

 string[,] Properties = new string[500, 3];

每次用户点击按钮时,我都会向该数组添加新的"记录"。我不知道你会怎么做。我确信我需要设置某种计数器。

我还必须更新和删除数组中的值。任何帮助将不胜感激。谢谢。

我应该如何在 WPF 中表示这些记录和字段

我将总结其他人的建议,因为您是新手。

为您的记录创建一个类(此示例相当简单):

class MyRecord
{
    public string Property1 {get; set; }
    public string Property2 { get; set; }
    public string Property3 { get; set; }
}

然后创建这些记录的列表:

List<MyRecord> theList;

使用theList.Add将新记录添加到列表中。

您不能轻易地添加到数组中。您唯一的选择是分配一个带有另一行的新数组,复制所有旧项目并将新数据放在最后一行。

删除行也是如此:您必须将已删除行"向上"之后的所有项目移动并使数组更短。这归结为分配一个新数组并复制所有项目。见上文:-)

通常,数组是低级构造,很少被 C# 中的开发人员使用。特别是如果要对可变集合进行建模。如果你想要一个可变的事物集合,那么使用一个事物的集合,即List<Thing>Thing将是一个包含三个属性的类,这些属性构成了您的记录。

集合类处理所有常见情况,例如插入和添加项、在任意位置删除项等。由于您提到了 WPF,因此它们还可以很好地与 WPF 的数据绑定和模板化功能配合使用,这些功能是在 UI 中显示数据的非常强大的工具。

您可能应该使用列表

LinkedList<String[]> properties = new LinkedList<String[]>();

然后您可以添加/删除条目

properties.AddLast({"a","b","c"});

使用列表而不是数组的优点是很容易从任意位置删除元素:)