C# 选择DataSQL到DataGridView
我尝试从表中绑定DataGridViewC# 选择DataSQL到DataGridView,c#,datagridview,sql-server-2012,C#,Datagridview,Sql Server 2012,我尝试从表中绑定DataGridView private void BindGrid() { DataGridViewNatureCharge.DataSource = null; using (SqlConnection con = new SqlConnection(connstring)) { using (SqlCommand cmd = new SqlCommand("select * from Natur
private void BindGrid()
{
DataGridViewNatureCharge.DataSource = null;
using (SqlConnection con = new SqlConnection(connstring))
{
using (SqlCommand cmd = new SqlCommand("select * from NatureCharge", con))
{
cmd.CommandType = CommandType.Text;
using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
{
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
DataGridViewNatureCharge.DataSource = dt;
}
}
}
}
}
但是我需要显示Nom Famille而不是Id,那么对select查询的修改是什么呢???
从NatureCharge中选择*,其中Idfam=从Famile中选择NomFam
更新
在DatagridView的另一个单元格中创建的NomFam存在问题。
我需要把它添加到第三个单元格中。
从NatureCharge中选择n.IdNat、n.NomNat、f.NomFam n.IdFam=f.IdFam
DataGridView
//Set Columns Count
DataGridViewNatureCharge.ColumnCount = 3;
//Hide the last blank line
DataGridViewNatureCharge.AllowUserToAddRows = false;
//Add Columns
DataGridViewNatureCharge.Columns[0].Name = "IdNat";
DataGridViewNatureCharge.Columns[0].HeaderText = "N° Nature de Charge";
DataGridViewNatureCharge.Columns[0].DataPropertyName = "IdNat";
DataGridViewNatureCharge.Columns[0].Width = 100;
DataGridViewNatureCharge.Columns[1].HeaderText = "Nom de Nature de Charge";
DataGridViewNatureCharge.Columns[1].Name = "NomNat";
DataGridViewNatureCharge.Columns[1].DataPropertyName = "NomNat";
DataGridViewNatureCharge.Columns[1].Width = 150;
DataGridViewNatureCharge.Columns[2].Name = "IdFam";
DataGridViewNatureCharge.Columns[2].HeaderText = "Nom de Famille";
DataGridViewNatureCharge.Columns[2].DataPropertyName = "IdFam";
DataGridViewNatureCharge.Columns[2].Width = 100;
DataGridViewCheckBoxColumn checkBoxColumn = new DataGridViewCheckBoxColumn();
checkBoxColumn.HeaderText = "";
checkBoxColumn.Width = 30;
checkBoxColumn.Name = "checkBoxColumn";
DataGridViewNatureCharge.Columns.Insert(0, checkBoxColumn);
为此使用SQL联接
SELECT A.NomFam, B.IdNat, B.NomNat FROM Famille A join NatureChange B on A.IdFam = B.IdFam
在querynothing中更改select顺序没有发生任何情况,结果相同,请参见upadet后的查询,我已经在表单中用名称和标题初始化datagridview我不确定您在问什么。但我想这就是问题所在:DataGridViewNatureCharge.Columns[2].DataPropertyName=IdFam;将其更改为DataGridViewNatureCharge.Columns[2]。DataPropertyName=NomFam。