如何在gridview的单列中获取总选中的复选框并将其显示到标签中
How to get the total checked checkbox in a single column of gridview and show it into a label
我需要一些帮助。我搜索了大部分网站,但没有找到我的查询所需的代码。
我在 window 应用程序中为 "Attendance of Class" 的模块编码,这里我有一个 gridview,其中包含学生姓名(文本框列)、卷号(文本框列)、存在(复选框列)、缺席(复选框列), 休假(复选框列)。
- 我希望在一行中只选中一个复选框。
- 我想在标签名称中显示当前学生总数(表示 "present checkbox" 列选中复选框的总数)。
如有任何建议,我们将不胜感激。 GridView ScreenShot
您可以使用它来计算所有在场学生(如评论中所述,如果有人不在场,则默认情况下他们不在)
int present = 0;
foreach (DataRow row in Students.Rows)
{
if (Student[row][2].Checked)//where i is the column in the datagridview
{
present++
}
}
关于只勾选一个框,参考这个Post on Whosebug
我自己通过以下代码找到了答案:
首先,我将 gridview.and 中的 checkBox True 值设置为 1,将 false 设置为 0,应用以下代码:-
private int countPresenttudents()
{
int d = 0, e = 0;
for (int i = 0; i < (dgvAttendance.Rows.Count - 1); i++)
{
d = Convert.ToInt32(dgvAttendance.Rows[i].Cells["Absent"].Value.ToString());
e = e + d; //storing total qty into variable
}
return e;
}
并将其应用到标签上-
private void btnGetTotal_Click(object sender, EventArgs e)
{
try
{
lblPresent.Text = Convert.ToString(countpresent());
lblAbsent.Text = Convert.ToString(countabsent());
lblLeave.Text=Convert.ToString(countleave());
}
catch
{
}
}
我需要一些帮助。我搜索了大部分网站,但没有找到我的查询所需的代码。 我在 window 应用程序中为 "Attendance of Class" 的模块编码,这里我有一个 gridview,其中包含学生姓名(文本框列)、卷号(文本框列)、存在(复选框列)、缺席(复选框列), 休假(复选框列)。
- 我希望在一行中只选中一个复选框。
- 我想在标签名称中显示当前学生总数(表示 "present checkbox" 列选中复选框的总数)。
如有任何建议,我们将不胜感激。 GridView ScreenShot
您可以使用它来计算所有在场学生(如评论中所述,如果有人不在场,则默认情况下他们不在)
int present = 0;
foreach (DataRow row in Students.Rows)
{
if (Student[row][2].Checked)//where i is the column in the datagridview
{
present++
}
}
关于只勾选一个框,参考这个Post on Whosebug
我自己通过以下代码找到了答案: 首先,我将 gridview.and 中的 checkBox True 值设置为 1,将 false 设置为 0,应用以下代码:-
private int countPresenttudents()
{
int d = 0, e = 0;
for (int i = 0; i < (dgvAttendance.Rows.Count - 1); i++)
{
d = Convert.ToInt32(dgvAttendance.Rows[i].Cells["Absent"].Value.ToString());
e = e + d; //storing total qty into variable
}
return e;
}
并将其应用到标签上-
private void btnGetTotal_Click(object sender, EventArgs e)
{
try
{
lblPresent.Text = Convert.ToString(countpresent());
lblAbsent.Text = Convert.ToString(countabsent());
lblLeave.Text=Convert.ToString(countleave());
}
catch
{
}
}