C# 仅覆盖DataGridView中所需的行
该应用程序的目的是显示一天中所有可用的小时数。如果已经存在一些日程安排,它将显示在自己的行上,否则该行将显示为白色,显示该时间的可用性 时间表根据我在日历上选择的日期显示在DataGridView中 例如: 上图显示了它应该如何保持,目前datagrid的填充方式如下:从08:00到20:00的临床工作C# 仅覆盖DataGridView中所需的行,c#,sql,sql-server,datagridview,rows,C#,Sql,Sql Server,Datagridview,Rows,该应用程序的目的是显示一天中所有可用的小时数。如果已经存在一些日程安排,它将显示在自己的行上,否则该行将显示为白色,显示该时间的可用性 时间表根据我在日历上选择的日期显示在DataGridView中 例如: 上图显示了它应该如何保持,目前datagrid的填充方式如下:从08:00到20:00的临床工作 private void frmAgenda_Load(object sender, EventArgs e) { string data = agenda.Selec
private void frmAgenda_Load(object sender, EventArgs e)
{
string data = agenda.SelectionRange.Start.ToString("MM/dd/yyyy");
for (int cont = 8; cont <= 19; cont++)
{
string[] row = new string[] { "", "", data, cont.ToString() + ":00", "" };
dtgrdAgendamentos.Rows.Add(row);
string[] row2 = new string[] { "", "", data, cont.ToString() + ":30", "" };
dtgrdAgendamentos.Rows.Add(row2);
}
string[] row3 = new string[] { "", "", data, "20:00", "" };
dtgrdAgendamentos.Rows.Add(row3);
}
显然,它会替换加载中加载的内容,但需要它检查记录保存在数据库consulta_hora列中的时间,并将其放入他们的计划在线数据网格中。在我们的示例中,我们在2014年5月13日安排并保存了三个时间表,一个在8:00、10:30,另一个在12:00。。。应用程序应该将这三个计划放在DataGridView中各自的位置上,并保留为空,如示例图所示
我感谢你的帮助,因为我不知道该怎么做。也许目前的形式不是最合适的
附言:但不知道如何使用
谢谢大家! 我想你需要描述一下你的代码有什么问题。我知道你的应用程序应该做什么,但我不知道你不能实现哪一部分。您在使用空计划完成datagrid时有困难吗?我手动填写的示例图像,只是为了说明它应该如何。目前,它加载第一个方法显示的信息,但要从DataGridView中的数据库加载信息,它会覆盖数据,而不是将它们放在所需的行上。在我们的示例中,只有3行与明细表相关@Tarec您在使用空计划完成datagrid时遇到困难吗?>>对
string day = agenda.SelectionRange.Start.ToString();
try
{
conexao.Open();
adap = new SqlDataAdapter("SELECT paciente_codigo , consulta_nomepaciente , consulta_data, consulta_hora, consulta_valor, consulta_id, consulta_recibo FROM consulta WHERE consulta_data = '" + day + "'", conexao);
ds = new DataSet();
adap.Fill(ds, "Patients_Schedules");
dtgrdAgendamentos.DataSource = ds.Tables[0];
dtgrdAgendamentos.Columns[5].Visible = false;
dtgrdAgendamentos.Columns[6].Visible = false;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
conexao.Close();
}