1

C# で Windows フォーム アプリケーション (PC インストール可能) を使用しています。フォーム デザイナーで DataGridView を作成し、実行時に DataTable をバインドしています。DataTable は、SQL 呼び出しによって設定されます。

DataGridView 列には、保持したい設計時に特定の HeaderText 値が与えられています。たとえば、「確認番号」は私の列見出しの 1 つです。さらに、各列の Name プロパティは、SQL 呼び出しによって返される値と一致するように設定されています。たとえば、「確認番号」列には「vchReturnReceipt」の Name プロパティがあります。これは、SQL によって返される列名だからです。

データは SQL から返され、DataViewGrid にバインドされ、表示されますが、グリッドは事前定義された列を使用するのではなく、返されたすべてのデータに対して新しい列を作成しています (事前定義された列はまだそこにあります) 、新しい列がそれらの右側に追加されます)。たとえば、「vchReturnReceipt」という新しい列が作成され、「確認番号」列に表示したい値が保持されます。

既存の列にデータを表示し、新しい列が表示されないようにするにはどうすればよいですか?

4

1 に答える 1

0

データをバインドする前に、次の 2 つのことを行います。

事前定義された列に対して.DataPropertyName、データベース列名を持つプロパティを定義します (デザイナーで、Datagridview オプションから [列の編集] を開きます)。

次に設定します.AutoGenerateColumns = False

このバインド後、データは.DatPropertyName列名に基づきます

于 2013-02-23T08:56:17.753 に答える