将datatable值绑定到asp.net中的gridview [英] bind datatable value to gridview in asp.net

查看:52
本文介绍了将datatable值绑定到asp.net中的gridview的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨朋友们,



这是从datatable绑定gridview的以下代码。



Hi friends,

This is the following code for binding gridview from datatable.

<pre lang="c#">DataTable result = inter.griddatabind(s, adminid);
            if (result!=null)
            {
                for (int i = 0; i < result.Rows.Count; i++)
                {
                    subjectteachgrid.Rows[i].Cells[1].Text = result.Rows[i]["AcademicYear"].ToString();
                    subjectteachgrid.Rows[i].Cells[2].Text = result.Rows[i]["Medium"].ToString();
                    subjectteachgrid.Rows[i].Cells[3].Text = result.Rows[i]["ClassName"].ToString() + "-" + result.Rows[i]["SectionName"].ToString();
                    subjectteachgrid.Rows[i].Cells[4].Text = result.Rows[i]["SubjectName"].ToString();
                    subjectteachgrid.Rows[i].Cells[5].Text = result.Rows[i]["Teachername"].ToString();
                    subjectteachgrid.Rows[i].Cells[6].Text = result.Rows[i]["Teacher_Type"].ToString();
                    subjectteachgrid.Rows[i].Cells[7].Text = result.Rows[i]["Maxnoofperiod"].ToString();

                }







以下是我的aspx文件




and the following is my aspx file

<pre lang="HTML"><Columns>
                            <asp:CommandField ButtonType="Image" CancelImageUrl="~/images/Cancel.jpg" 

                                DeleteImageUrl="~/images/delete.jpg" EditImageUrl="~/images/Edit.jpg" 

                                ShowDeleteButton="True" ShowEditButton="True" 

                                UpdateImageUrl="~/images/update.jpg" />
             <asp:TemplateField HeaderText="AcadmicYear" >
             <ItemTemplate>
             <asp:Label ID="acyearlbl" runat="server" Text='<%# Eval("AcadamicYear") %>'/>
             </ItemTemplate>
             <EditItemTemplate>
             <asp:DropDownList ID="acyeardropdown1" AutoPostBack="true" OnSelectedIndexChanged="acyeardropdown1_SelectedIndexChanged" runat="server" Width="100px">
            </asp:DropDownList>
            
             </EditItemTemplate>
             </asp:TemplateField>
             <asp:TemplateField HeaderText="Medium">
             <ItemTemplate>
             <asp:Label ID="mediumlbl" runat="server" Text='<%# Eval("Medium") %>'/>
             </ItemTemplate>
             <EditItemTemplate>
             <asp:DropDownList ID="mediumdropdown1" AutoPostBack="true"  OnSelectedIndexChanged="mediumdropdown1_SelectedIndexChanged" runat="server" Width="100px">
            </asp:DropDownList>
            
             </EditItemTemplate>
             </asp:TemplateField>
             <asp:TemplateField HeaderText="Class">
             <ItemTemplate>
             <asp:Label ID="classlbl" runat="server" Text='<%# Eval("ClassName") %>'/>
             </ItemTemplate>
             <EditItemTemplate>
             <asp:DropDownList ID="Classdropdown1"  runat="server" AutoPostBack="true" OnSelectedIndexChanged="Classdropdown1_SelectedIndexChanged" Width="100px">
            </asp:DropDownList>
            
             </EditItemTemplate>
             </asp:TemplateField>
             <asp:TemplateField HeaderText="Subject">
             <ItemTemplate>
             <asp:Label ID="Label2" runat="server" Text='<%# Eval("Subject") %>'/>
             </ItemTemplate>
             <EditItemTemplate>
             <asp:DropDownList ID="Subjectdropdown1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="Subjectdropdown1_SelectedIndexChanged" Width="100px">
            </asp:DropDownList>
            
             </EditItemTemplate>
             </asp:TemplateField>
             <asp:TemplateField HeaderText="Teacher">
             <ItemTemplate>
             <asp:Label ID="Label2" runat="server" Text='<%# Eval("Teacher") %>'/>
             </ItemTemplate>
             <EditItemTemplate>
             <asp:DropDownList ID="Teacherdropdown1" AutoPostBack="true" runat="server"  Width="100px">
            </asp:DropDownList>
            
             </EditItemTemplate>
             </asp:TemplateField>
             <asp:TemplateField HeaderText="Designation">
             <ItemTemplate>
             <asp:Label ID="Label2" runat="server" Text='<%# Eval("Designation") %>'/>
             </ItemTemplate>
             <EditItemTemplate>
             <asp:DropDownList ID="Designationdropdown1" AutoPostBack="false" runat="server"  Width="100px">
            </asp:DropDownList>
            
             </EditItemTemplate>
             </asp:TemplateField>
             <asp:BoundField HeaderText="Max Period" runat="server" DataField="MaximumPeriod" />
                        </Columns>



数据表值不为空且值为null 。但是发生以下错误。

指数超出范围。必须是非负数且小于集合的大小。

参数名称:index


The datatable value is not null and it has the value.but the following error is occured.
Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index

推荐答案

您好



你可以像这样绑定数据表到gridview



subjectteachgrid.DataSource = result.DefaultView。



只需尝试一次,让我知道
Hi

You can bind the datatable to gridview like this

subjectteachgrid.DataSource=result.DefaultView.

Just try it once and let me know


这篇关于将datatable值绑定到asp.net中的gridview的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆