如何在 gridview 控件的项目模板内显示列表视图。

2024-05-14

如何在 gridview 控件的项目模板内显示列表视图。
gridview 将列出 table_bill 中的所有 bill_id,列表视图将绑定 table_bill_details 中具有特定 item_bill_id 的所有 item_id 和数量。
表账单模式

  • bill_id(主键)
  • 帐单日期
  • bill_customer_id(该表的外键,Origin表为table_customer)
  • table_bill_details 架构

  • item_id(主键)
  • quantity
  • item_bill_id(该表的外键,Origin表为table_bill)

  • I needed in user interface as shown in the following image

    终于我得到了答案。 只需按如下操作即可...

    在 .aspx 文件中


    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" OnRowDataBound="GridView1_RowDataBound">
            <Columns> 
                <asp:TemplateField>
                    <ItemStyle BackColor="#C2D88B" Width="250px" />
                    <ItemTemplate>
                        <div class="id">
                            <asp:Label ID="Label3" runat="server" Text='<%# Eval("bill_id") %>' ></asp:Label>
                        </div>
                        <div class="ex">
                            <p>
                                <asp:ListView ID="ListView1" runat="server">
                                    <ItemTemplate>
                                        <asp:Label ID="Label1" runat="server" Text='<%# Eval("item_id") %>'></asp:Label>
                                        <asp:Label ID="Label2" runat="server" Text='<%# Eval("quantity") %>'></asp:Label>
                                    </ItemTemplate>
                                    <ItemSeparatorTemplate>
                                    <br />                                        
                                    </ItemSeparatorTemplate>
                                </asp:ListView>
                            </p>
                        </div>
                    </ItemTemplate>
                </asp:TemplateField>                 
            </Columns>
        </asp:GridView>
    

    在 aspx.cs 文件上


    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            DataSet ds = new DataSet();
            DataTable bill = new DataTable();
            bill.TableName = "cc";
    
            DataTable details = new DataTable();
            details.TableName = "ii";
    
            //Run necesserry commands to fill cc with values from table_bill & ii with values from table_bill_details
    
            ds.Tables.Add(catogory);
            ds.Tables.Add(item);
            DataRelation rel = new DataRelation("test", ds.Tables["cc"].Columns["bill_id"], ds.Tables["ii"].Columns["bill_id"]);
            ds.Relations.Add(rel);
            this.GridView1.DataSource = ds.Tables["cc"];
            GridView1.DataBind();
        }
    }
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            ListView inner = e.Row.FindControl("ListView1") as ListView;
            DataRowView drv = e.Row.DataItem as DataRowView;
            DataRow[] rows = drv.Row.GetChildRows("test");
            ArrayList lst = new ArrayList();
            for (int i = 0; i < rows.Length; i++)
            {
                Item ii = new Item(rows[i][2].ToString(), rows[i][1].ToString(), rows[i][0].ToString());
                lst.Add(ii);
            }
    
            inner.DataSource = lst;
            inner.DataBind();
    
            //drv.Row.
    
        }
    }
    
    class Item
    {
        string quantity;
    
        public string Quantity
        {
            get { return quantity;}
            set { quantity = value; }
        }
        string item_id;
    
        public string Bill_id
        {
            get { return item_id;}
            set { item_id = value; }
        }
        string bill_id;
    
        public string Bill_id
        {
            get { return bill_id;}
            set { bill_id = value; }
        }
    
        public Item(string quantity, string bill_id)
        {
            this.quantity = quantity;
            this.item_id = item_id;
            this.bill_id = bill_id;
        }
    
    }
    

    这就是我想要的。感谢大家。

    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

    如何在 gridview 控件的项目模板内显示列表视图。 的相关文章

    • ASP.Net 异步 HTTP 文件上传处理程序

      我正在尝试在 C 中创建一个异步文件上传处理程序 并且可以通过 AJAX 异步请求提供有关文件进度的更新 基本上 如果请求是 POST 它会将一些信息加载到会话中 然后开始上传 如果请求是 GET 它会返回上传的当前状态 上传的字节数 总字
    • aspx页面中的if语句

      我想在我的网站上编写一个基本的 if 语句 以根据变量是否设置为 true 来显示项目 1 或项目 2 我对 NET 不太熟悉 需要一些关于如何让 if 语句在 aspx 页面上工作的基本结构的帮助 如果目的是显示或隐藏页面的一部分 那么您
    • 装配和产品版本不匹配

      我正在尝试在 asp net 网站中使用 Ajax 控件工具包 我从之前的一个示例项目中复制了 dll 它有以下详细信息 Assembly Version 3 5 40412 0 File Version 3 5 40412 2 Inter
    • ASP.net获取硬件信息

      如果我创建一个 ASP net 页面 我是否能够获取当前用户的 CPUID 和 BIOS 序列号 还是出于安全原因不允许这样做 我目前有一个获取这些值的 Visual Basic net 应用程序 我只是想知道是否可以在网页上执行相同的操作
    • UpdatePanel 启动脚本未执行

      我正在编写一个在 SharePoint 网站中使用的 ASP NET Web 部件 并尝试使用 UpdatePanel 来呈现查询结果 我想使用 JQuery 插件来修改从异步回发返回的表 但我无法让启动脚本在异步更新上执行 我发现这个帖子
    • 如何在flutter上关注android tv应用程序中的列表视图项目

      我想在 flutter 中构建一个 android 电视应用程序 几乎所有事情都已完成 但一个问题是我无法集中注意力 例如一些弹出效果或边框更改任何告诉用户您现在正在使用此项目的内容 我们在列表视图中迭代的项目 我想要在应用程序中看到的图像
    • 更改成员资格、角色等的默认连接字符串

      默认情况下 我的网络应用程序似乎正在使用LocalSqlServer作为用于任何应用程序服务 例如成员资格 角色 身份验证 等 的连接字符串 有什么方法可以更改默认连接字符串应该是什么 默认值是 LocalSqlServer 似乎很随意 我
    • .tostring() 保留前导零[关闭]

      这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 转换对象
    • Web.config appSettings:复杂值

      Web config 的 appSettings 部分只能存储这样的简单字符串吗
    • 如何在日历中选择多个日期并将其显示在标签中

      假设我有日历 并且我想选择多个日期并在标签中显示 我使用了以下代码 但它无法正常工作 请更正 lblMultipleDate Text Calendar1 SelectedDates 0 ToShortDateString Label2 T
    • 当客户端连接到“localhost”上的服务时,为什么 System.Net.ServicePoint.ConnectionLimit 使用“7FFFFFFF”(Int32.MaxValue/2147483647)?

      为什么使用 System Net ServicePoint ConnectionLimit 7FFFFFFF Int32 MaxValue 2147483647 当客户端连接到服务时 本地主机 而如果服务在远程计算机上运行 它决定使用 2
    • ASP.NET MVC - 更新生产中的预编译 Razor View 文件

      我想知道以下是否可能 通过在 Visual Studio 中打开项目设置 使用我们的 MVC 应用程序预编译 Razor 视图 将应用程序部署到生产环境 然后在稍后阶段 通过覆盖生产中现有的 cshtml 文件来更新视图 而无需回收应用程序
    • MVC3数据缓存技术

      我有一个 sql 查询 存储过程 在结果显示在网络网格中之前需要大约 8 10 秒才能返回 关于 asp net mvc3 中的缓存的性能最佳实践是什么 以便用户不必每次都花费 8 10 秒来加载该数据 减少优化查询 你可以使用内存缓存 h
    • MVC4 - ContextDependentView - 是什么意思?

      我刚刚开始使用 MVC4 我看到的第一个操作方法有一些新内容 我查了一下互联网 找不到任何关于此的信息 public ActionResult LogOn return ContextDependentView 有谁知道 ContextDe
    • Cookie 在 ASP.net 中失去价值

      我有以下设置 cookie 的代码 string locale DropDownList this LoginUser FindControl locale SelectedValue HttpCookie cookie new HttpC
    • 更新面板异常处理

      当我在正在构建的 ASP NET Web 应用程序中实现的 UpdatePanel 中发生异常时 它们会导致页面上出现 JavaScript 错误 并在警报中提供一些高级错误输出 这对于开发来说还可以 但是一旦系统投入生产 由于多种原因 这
    • DbContext.SaveChangesAsync 异常处理

      当搭建新的脚手架时ApiController通过 Visual Studio 2013 中的异步操作和实体框架支持 某些方法可以包装DbContext SaveChangesAsync https msdn microsoft com en
    • 回发后保持网格视图中 div 的滚动条位置

      我在 web config 中使用了以下代码 以便在服务器回发后保持滚动条位置
    • ASP.NET MVC 防伪造令牌不安全

      在没有 ssl 的情况下向服务器发出请求时 我实际上可以看到 MVC3 框架以纯文本形式生成的验证令牌密钥 该密钥存储在名为 RequestVerificationToken Lw 的 cookie 中 在混合安全环境中 实际上可以在向非
    • asp.net cookie、身份验证和会话超时

      我有一个使用表单身份验证的 asp net 网站 我在会话中保留一些信息 例如用户名 用户 ID 电子邮件等 我通过在身份验证 cookie 上设置较长的到期日期来允许用户保持登录网站的状态 因此 当用户仍处于身份验证状态时 会话过期的情况

    随机推荐