Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将我的数据集单元格分配给适当的datagridview单元格,该单元格中添加了Coulmn?_C#_Sql Server_Datagridview - Fatal编程技术网

C# 如何将我的数据集单元格分配给适当的datagridview单元格,该单元格中添加了Coulmn?

C# 如何将我的数据集单元格分配给适当的datagridview单元格,该单元格中添加了Coulmn?,c#,sql-server,datagridview,C#,Sql Server,Datagridview,我在windows窗体中添加了一个datagridview,其中包含5列 Item Code | Description | Quantity | Rate | Item Total 这些是我在数据网格视图中拥有的列的标题 我使用以下过程将数据从数据库检索到数据集 create proc [dbo].[get_an_invoice_details] @inv_no int as select inv_item_code, inv_item_desc, inv_

我在windows窗体中添加了一个
datagridview
,其中包含5列

Item Code | Description | Quantity | Rate | Item Total
这些是我在数据网格视图中拥有的列的标题

我使用以下过程将数据从数据库检索到数据集

create proc [dbo].[get_an_invoice_details]
    @inv_no int
as
    select 
        inv_item_code, inv_item_desc, inv_item_qty, inv_item_rate, 
        (inv_item_qty * inv_item_rate) item_total
    from 
        invoice 
    where 
        inv_no = @inv_no;
GO
现在我想在名为itemcode的datagridview列中显示此项代码。分别与其他列相同。但是当我将dataset变量作为数据源时,它不会这样显示。数据显示。但不在本专栏中。正在生成5个新列,这些列在网格视图中为空。请看屏幕截图。我将“自动生成列”属性设置为false。但是什么也看不出来

这是“检索”按钮的代码:

private void btn_retrieve_Click(object sender, EventArgs e)
{
    dtgrdvw_items.AutoGenerateColumns = false;
    string sql = "get_an_invoice_details @inv_No=" + Convert.ToInt32(txt_inv_no.Text) + ";";

    SqlDataAdapter da = new SqlDataAdapter(sql, con);
    DataSet ds = new DataSet();

    con.Open();
    da.Fill(ds, "invoice");
    con.Close();

    dtgrdvw_items.DataSource = ds;
    dtgrdvw_items.DataMember = "invoice";
}
检索后的应用程序屏幕截图


DataGridView
包括
DataPropertyName
,如下代码所示。你应该很好

 private void btn_retrieve_Click(object sender, EventArgs e)
        {
            dtgrdvw_items.AutoGenerateColumns = false;
            dtgrdvw_items.Columns[0].DataPropertyName = "inv_item_code";
            dtgrdvw_items.Columns[1].DataPropertyName = "inv_item_desc";
            dtgrdvw_items.Columns[2].DataPropertyName = "inv_item_qty"; 
            dtgrdvw_items.Columns[3].DataPropertyName = "inv_item_rate"; 
            dtgrdvw_items.Columns[4].DataPropertyName = "inv_item_total";
            string sql = "get_an_invoice_details @inv_No=" + 
            Convert.ToInt32(txt_inv_no.Text) + ";";
            SqlDataAdapter da = new SqlDataAdapter(sql, con);
            DataSet ds = new DataSet();
            con.Open();
            da.Fill(ds, "invoice");
            con.Close();
            dtgrdvw_items.DataSource = ds;
            dtgrdvw_items.DataMember = "invoice";

        }

dtgrdvw_items.Columns[0]。HeaderText=“项目代码”

包括的DataPropertyNamedatagridview@SijoGeorgeOommen我很高兴能帮助你。请接受答案!