1

我有一个 C# 中的 Windows 窗体应用程序(可安装 PC)。我用表单设计器创建了一个 DataGridView,并在运行时将一个 DataTable 绑定到它。DataTable 由 SQL 调用填充。

DataGridView 列已在设计时被赋予了我想要保留的特定 HeaderText 值。例如,“确认号”是我的列标题之一。此外,每列的 Name 属性已设置为与 SQL 调用返回的值相匹配。因此,例如,我的“确认编号”列具有“vchReturnReceipt”的名称属性,因为这是 SQL 返回的列名称。

数据从 SQL 返回,它被绑定到 DataViewGrid,它正在显示,但是网格正在为所有返回的数据创建新列,而不是使用预定义的列(预定义的列仍然存在,并在它们的右侧添加新列)。例如,创建了一个名为“vchReturnReceipt”的新列,其中包含我想要在“确认编号”列中显示的值。

如何在现有列中显示数据,并防止新列出现?

4

1 回答 1

0

在绑定数据之前做两件事:

为预定义列定义.DataPropertyName具有数据库列名称的属性(在设计器中从 Datagridview 选项打开“编辑列”)

然后设置.AutoGenerateColumns = False

在此绑定数据将基于.DatPropertyName列名之后

于 2013-02-23T08:56:17.753 回答