tangjunwen20 2021-06-02 22:00 采纳率: 100%
浏览 45
已采纳

asp.net怎么绑定 gridviw 中dropdrowlist的值?

表里一个商品有多个不同单价(pro_pic,pro_pic1,pro_pic2),现需要把三个单价的值绑定到一个下拉选择筐里,要怎么样实现?显示如下

 

  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2021-06-03 09:21
    关注

    实测,对你有帮助可以点采纳支持下吗,谢谢

    <%@ Page Language="C#" %>
    <%@ Import Namespace="System.Data" %>
    <!DOCTYPE html>
    
    <script runat="server">
        DataTable dt;
        protected void Page_Load(object sender, EventArgs args)
        {
            dt = new DataTable();
            dt.Columns.Add("pro_no");
            dt.Columns.Add("pro_name");
            dt.Columns.Add("pro_pic");
            dt.Columns.Add("pro_pic1");
            dt.Columns.Add("pro_pic2");
            dt.PrimaryKey = new DataColumn[] { dt.Columns[0] };//注意修改这里为pro_no所在column,如果是第一个不需要修改这里
    
            dt.Rows.Add("1", "商品1", "158", "2", "3");
            dt.Rows.Add("2", "商品2", "68", "2", "3");
            gv1.DataSource = dt;
            gv1.DataBind();
        }
        protected DataTable getPrice(string pro_no)
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("price");
    
            DataRow dr = this.dt.Rows.Find(pro_no);
            dt.Rows.Add(dr["pro_pic"]);
            dt.Rows.Add(dr["pro_pic1"]);
            dt.Rows.Add( dr["pro_pic2"]);
    
            return dt;
        }
    </script>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
            <asp:GridView runat="server" ID="gv1" AutoGenerateColumns="false">
                <Columns>
                    <asp:BoundField DataField="pro_no" HeaderText="编号" ReadOnly="true" />
                    <asp:BoundField DataField="pro_name" HeaderText="商品名称" />
                    <asp:TemplateField HeaderText="选择价格">
                        <ItemTemplate>
                            <asp:DropDownList ID="DropDownList1" runat="server" DataSource='<%#getPrice(((DataRowView)Container.DataItem)["pro_no"].ToString())%>' DataValueField="price" DataTextField="price"></asp:DropDownList>
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>
        </form>
    </body>
    </html>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看