我正在尝试编辑数据集中的数据(更改一行中的列中的值),该数据集未链接到数据库。我一直在谷歌搜索大约一个小时没有结果,也没有好的例子。希望有人可以帮助我。
我的表(DataTable1)有这些列 - ThreadID(字符串,PK),StatusText(字符串)。
我可以在DataGridView中选择一行,并获取ThreadID值。无论我如何尝试编辑关联数据集中的行,都不会发生任何事情或我收到错误。这就是我现在所拥有的:
string sThreadID = "";
sThreadID = gridThreads.Rows[gridThreads.CurrentRow.Index].Cells["ID"].Value.ToString(); // gives me a good id, which is in the dataset
DataRow drRow = dataThreads.Tables["DataTable1"].Rows.Find(sThreadID);
drRow["StatusText"] = "Test";
获取行(第3行)时得到的错误是:“对象引用未设置为对象的实例。”。我无法创建一个新的DataRow对象,因为它没有公共构造函数(根据我的研究)。
我确定我遗漏了一些基本的东西,但我不熟悉使用数据集。我究竟做错了什么?谢谢你的帮助。
答案 0 :(得分:0)
dataThreads
或Tables["DataTable1"]
null
是否会发生?
要创建新行,请使用数据表的NewRow()
方法。
答案 1 :(得分:0)
arRow如何知道“statusText”是什么?您可能只获得浅拷贝,尝试克隆/复制,以便也可以复制行的数据类型。只是一个想法。