asp.net(c#)中DataGrid问题

zhimu 2007-06-03 03:53:33
为什么这个就是不能绑定成功呢?提示错误是在“迟到天数”那一列 (我在下面的代码中标志了错误位置) -----在位置 0 处没有任何行。

新手,还是不懂,请大侠帮帮忙。
// 以下是.CS中的代码

protected void SearchBtn_Click(object sender, System.EventArgs e)
{
DataSet ds = new DataSet();

//得到考勤数据
DutyTime duty = new DutyTime();
SqlDataReader recd = duty.GetAttendances(DateTime.Parse(Begintime.Text.Trim()),
DateTime.Parse(Endtime.Text.Trim()),Int32.Parse(StaffList.SelectedValue));
DataTable dutydb = SystemTools.ConvertDataReaderToDataTable(recd);

ds.Tables.Add(dutydb);
dvDuty = ds.Tables[0].DefaultView;

AttendanceList.DataSource = dvDuty;
AttendanceList.DataBind();
}

public string GetGridData(string staffid,int type)
{
//type:0 正常 1:迟到 2:早退 3:未考勤 4:总考勤天数
switch(type)
{
case 0:
dvDuty.RowFilter = "OnDutyStatus = 1 and OffDutyStatus = 1 and UID=" + staffid;
break;
case 1:
dvDuty.RowFilter = "OnDutyStatus=0 and UID=" + staffid;
break;
case 2:
dvDuty.RowFilter = "OffDutyStatus=0 and UID=" + staffid;
break;
case 3:
dvDuty.RowFilter = "UID=" + staffid;
return((dvDuty.Count - dvDuty.Count).ToString());
case 4:
break;
}
return(dvDuty.Count.ToString());
}

//以下是源代码

TD align="right" colSpan="2"><asp:datagrid id="AttendanceList" runat="server" Width="100%" AutoGenerateColumns="False" EnableViewState="False"
DataKeyField="AttendenceID" BorderColor="#93BEE2" BorderWidth="1px" CellPadding="3">
<HeaderStyle Font-Size="X-Small" BackColor="#E8F4FF"></HeaderStyle>
<Columns>
<asp:BoundColumn DataField="RealName" HeaderText="姓名">
<ItemStyle Font-Size="X-Small"></ItemStyle>
<FooterStyle Font-Size="X-Small"></FooterStyle>
</asp:BoundColumn>
<asp:TemplateColumn HeaderText="正常天数">
<ItemTemplate>
<%# GetGridData(((DataRowView)Container.DataItem)["UID"].ToString(), 0)%>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="迟到天数"> ///在此错提示了一个错误(在位置 0 处没有任何行。)
<ItemTemplate>
<%# GetGridData(((DataRowView)Container.DataItem)["UID"].ToString(), 1)%>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="早退天数">
<ItemTemplate>
<%# GetGridData(((DataRowView)Container.DataItem)["UID"].ToString(), 2)%>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="未考勤天数">
<ItemTemplate>
<%# GetGridData(((DataRowView)Container.DataItem)["UID"].ToString(), 3)%>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="总考勤天数">
<ItemTemplate>
<%# GetGridData(((DataRowView)Container.DataItem)["UID"].ToString(), 4)%>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle Mode="NumericPages" />
</asp:datagrid></TD>




...全文
152 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧