我需要帮助来理解我错了,我正在使用DataGridView允许在Form中显示表格,并且我想插入具有两个DateTimePicker字段的选择日期范围的功能,然后启动SELECT但是,当我启动程序并尝试在DataGridView字段中进行选择时,即使我设置了两个SelectCommand指令,也要用“ CERCA”按钮声明。我不明白我哪里错了。
public DataGridView_Maria()
{
InitializeComponent();
}
SqlConnection conn = new SqlConnection("Data Source=192.168.0.51;Initial
Catalog=Archivio_Stipendi;User ID=sa;Password=NI2000ma;");
private void CERCA_Button_Click(object sender, EventArgs e)
{
conn.Open();
'SqlDataAdapter sdf = new SqlDataAdapter(@"SELECT GIORNO, RIPOSO, ORE_LAVORO, COMPENSO_LAVORO FROM [dbo].[MARIA_VARAVALLO] WHERE GIORNO BETWEEN '@DA_GIORNO' AND '@A_GIORNO';", conn);'
sdf.SelectCommand.Parameters.AddWithValue("@DA_GIORNO", Da_Mar_DTP.Text);
sdf.SelectCommand.Parameters.AddWithValue("@A_GIORNO", A_Mar_DTP.Text);
DataTable sd = new DataTable();
sdf.Fill(sd);
DataGridView_Mar.DataSource = sd;
conn.Close();
}
}
我只是根据您的建议进行了更改,通过直接从查询中设置日期范围,DataGridView可以正常工作,单击“ CERCA”按钮将显示设置的日期。太棒了!但是我仍然不知道为什么DataTimePicker给他带来了问题...
这是修改后的代码:
public DataGridView_Maria()
{
InitializeComponent();
}
SqlConnection conn = new SqlConnection("Data Source=192.168.0.51;Initial Catalog=Archivio_Stipendi;User ID=sa;Password=NI2000ma;");
private void CERCA_Button_Click(object sender, EventArgs e)
{
conn.Open();
SqlDataAdapter sdf = new SqlDataAdapter(@"SELECT GIORNO, RIPOSO, ORE_LAVORO, COMPENSO_LAVORO FROM [dbo].[MARIA_VARAVALLO] WHERE GIORNO BETWEEN 'Lunedì 09 Marzo 2020' AND 'Lunedì 09 Marzo 2020';", conn);
DataTable sd = new DataTable();
sdf.Fill(sd);
DataGridView_Mar.DataSource = sd;
conn.Close();
}
}
}
代替Text
的DateTimePicker
属性,尝试使用Value
属性,如下所示: