我对C#很新。你如何使用多维数组?我也在使用WPF。
为了更清楚我的问题,这就是我想要做的事情:
我有一个数组,需要存储大约200个'记录',每个记录有三个字段,用户使用文本框输入。所以我认为这就是你如何设置阵列:
string[,] Properties = new string[500, 3];
每次用户点击按钮时,我都会向该数组添加一个新的“记录”。我对你如何做到这一点毫无头绪。我确信我需要设置一些计数器。
我还必须更新和删除数组中的值。任何帮助,将不胜感激。感谢您。
答案 0 :(得分:4)
我会总结其他人的建议,因为你是新手。
为您的记录创建一个类(此示例相当简单):
class MyRecord
{
public string Property1 {get; set; }
public string Property2 { get; set; }
public string Property3 { get; set; }
}
然后创建这些记录的列表:
List<MyRecord> theList;
使用theList.Add
将新记录添加到列表中。
答案 1 :(得分:3)
您无法轻松添加到阵列。您唯一的选择是分配一个新数组与另一行,复制所有旧项目并将新数据放在最后一行。
同样删除一行:您必须在删除的行“up”之后移动所有项目并使数组缩短。归结为分配新阵列和复制所有项目。见上文: - )
通常,数组是一个低级构造,很少被C#中的开发人员使用。 特别是如果你想为可变集合建模。如果你想要一个可变的东西集合,那么使用一组东西,例如List<Thing>
。 Thing
将是一个包含构成记录的三个属性的类。
集合类处理所有常见情况,例如插入和添加项目,删除任意位置的项目等。由于您提到了WPF,它们也很好地使用WPF的数据绑定和模板功能,这是非常强大的显示工具用户界面中的数据。
答案 2 :(得分:2)
您应该使用列表
LinkedList<String[]> properties = new LinkedList<String[]>();
然后你可以添加/删除条目
properties.AddLast({"a","b","c"});
在数组上使用列表的优点是从任意位置删除元素很容易:)