• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Asp.net中用核选框显示数据的方法及ButtonColumn的使用方法

发布: 2007-6-30 23:38 | 作者: admin | 来源: | 查看: 17次 | 进入软件测试论坛讨论

领测软件测试网 <%@ Import Namespace="System.Data" %>

<html>
<script language="C#" runat="server">

    DataTable Cart;
    DataView CartView;

    ICollection CreateDataSource() {
        DataTable dt = new DataTable();
        DataRow dr;

        dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
        dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
        dt.Columns.Add(new DataColumn("DateTimeValue", typeof(DateTime)));
        dt.Columns.Add(new DataColumn("BoolValue", typeof(bool)));
        dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));

        for (int i = 0; i < 9; i++) {
            dr = dt.NewRow();
            dr[0] = i;
            dr[1] = "Item " + i.ToString();
            dr[2] = DateTime.Now;
            dr[3] = (i % 2 != 0) ? true : false;
            dr[4] = 1.23 * (i+1);

            dt.Rows.Add(dr);
        }

        DataView dv = new DataView(dt);
        return dv;
    }

    void Page_Load(Object sender, EventArgs e)
    {
        if (Session["DG5_ShoppingCart"] == null) {
            Cart = new DataTable();
            Cart.Columns.Add(new DataColumn("Item", typeof(string)));
            Cart.Columns.Add(new DataColumn("Price", typeof(string)));
            Session["DG5_ShoppingCart"] = Cart;
        }
        else {
            Cart = (DataTable)Session["DG5_ShoppingCart"];
        }    
        CartView = new DataView(Cart);
        ShoppingCart.DataSource = CartView;
        CartView.Sort="Item";
        ShoppingCart.DataBind();

        MyDataGrid.DataSource = CreateDataSource();
        MyDataGrid.DataBind();
    }

    void Grid_CartCommand(object sender, DataGridCommandEventArgs e) {
    
        DataRow dr = Cart.NewRow();
        
        // e.Item is the row of the table where the command fired
        // For bound columns the value is stored in the Text property of TableCell
        TableCell itemCell = e.Item.Cells[1];
        TableCell priceCell = e.Item.Cells[2];
        string item = itemCell.Text;
        string price = priceCell.Text;
        
        if (((LinkButton)e.CommandSource).CommandName == "AddToCart") {
            dr[0] = item;
            dr[1] = price;
            Cart.Rows.Add(dr);
        }
        else {   //Remove from Cart
        
            CartView.RowFilter = "Item=@#"+item+"@#";
            if (CartView.Count > 0) {    
                CartView.Delete(0);
            }
            CartView.RowFilter = "";
        }
        ShoppingCart.DataBind();

    }


</script>

<body>

    <h3><font face="Verdana">Using a Template Column in DataGrid</font></h3>

    <form runat=server>

    <table cellpadding="5">
    <tr valign="top">
    <td>

    <b>Product List</b>
    <asp:DataGrid id="MyDataGrid" runat="server"
        BorderColor="black"
        BorderWidth="1"
        GridLines="Both"
        CellPadding="3"
        CellSpacing="0"
        Font-Name="Verdana"
        Font-Size="8pt"
        HeaderStyle-BackColor="#aaaadd"
        AutoGenerateColumns="false"
        OnItemCommand="Grid_CartCommand"
        >
        <Columns>
            <asp:TemplateColumn HeaderText="Add/Remove">
                <ItemTemplate>
                    <asp:LinkButton ID=AddButton Text="Add" CommandName="AddToCart" ForeColor="blue" runat="server" /> 
                    <asp:LinkButton ID=RemoveButton Text="Remove" CommandName="RemoveFromCart" ForeColor="blue" runat="server" />
                </ItemTemplate>
            </asp:TemplateColumn>
            
            <asp:BoundColumn HeaderText="Item" DataField="StringValue"/>
            <asp:BoundColumn HeaderText="Price" DataField="CurrencyValue" DataFormatString="{0:c}" ItemStyle-HorizontalAlign="right" />
            
            <asp:TemplateColumn HeaderText="Assembly required?">
                <ItemTemplate>
                    <asp:CheckBox ID=Chk1 Checked=@#<%# DataBinder.Eval(Container.DataItem, "BoolValue") %>@# Enabled="false" runat="server" />
                </ItemTemplate>
            </asp:TemplateColumn>
        </Columns>
    </asp:DataGrid>

    </td><td>

    <b>Shopping Cart</b>
    <asp:DataGrid id="ShoppingCart" runat="server"
        BorderColor="black"
        BorderWidth="1"
        CellPadding="3"
        Font-Name="Verdana"
        Font-Size="8pt"
        HeaderStyle-BackColor="#aaaadd"
        />

    </td>
    </tr>
    </table>

  </form>

</body>
</html>

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网