漫漫技术人生路

C#

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
http://blog.csdn.net/rootbin1/
<%@ Page language="C#" %>

<script runat="server">

  void CustomersGridView_RowCommand(Object sender, GridViewCommandEventArgs e)
  {
    // If multiple buttons are used in a GridView control, use the
    // CommandName property to determine which button was clicked.
    if(e.CommandName=="Add")
    {
      // Convert the row index stored in the CommandArgument
      // property to an Integer.
      int index = Convert.ToInt32(e.CommandArgument);
           
      // Retrieve the row that contains the button clicked
      // by the user from the Rows collection.
      GridViewRow row = CustomersGridView.Rows[index];
           
      // Create a new ListItem object for the customer in the row.    
      ListItem item = new ListItem();
      item.Text = Server.HtmlDecode(row.Cells[2].Text);
           
      // If the customer is not already in the ListBox, add the ListItem
      // object to the Items collection of the ListBox control.
      if (!CustomersListBox.Items.Contains(item))
      {
        CustomersListBox.Items.Add(item);
      }          
    }
  }

  void CustomersGridView_RowCreated(Object sender, GridViewRowEventArgs e)
  {
   
    // The GridViewCommandEventArgs class does not contain a
    // property that indicates which row's command button was
    // clicked. To identify which row's button was clicked, use
    // the button's CommandArgument property by setting it to the
    // row's index.
    if(e.Row.RowType == DataControlRowType.DataRow)
    {
      // Retrieve the LinkButton control from the first column.
      LinkButton addButton = (LinkButton)e.Row.Cells[0].Controls[0];
         
      // Set the LinkButton's CommandArgument property with the
      // row's index.
      addButton.CommandArgument = e.Row.RowIndex.ToString();
    }

  }
   
</script>

<html>
  <body>
    <form runat="server">
       
      <h3>GridView RowCommand Example</h3>
           
      <table width="100%">        
        <tr>               
          <td width="50%">
                   
            <asp:gridview id="CustomersGridView"
              datasourceid="CustomersSource"
              allowpaging="true"
              autogeneratecolumns="false"
              onrowcommand="CustomersGridView_RowCommand"
              onrowcreated="CustomersGridView_RowCreated" 
              runat="server">
               
              <columns>
                <asp:buttonfield buttontype="Link"
                  commandname="Add"
                  text="Add"/>
                <asp:boundfield datafield="CustomerID"
                  headertext="Customer ID"/>
                <asp:boundfield datafield="CompanyName"
                  headertext="Company Name"/>
                <asp:boundfield datafield="City"
                  headertext="City"/>        
              </columns>
               
            </asp:gridview>
                   
          </td>
                   
          <td valign="top" width="50%">
                   
            Customers: <br/>
            <asp:listbox id="CustomersListBox"
              runat="server"/>
                   
          </td> 
        </tr>     
      </table>
           
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSource"
        selectcommand="Select [CustomerID], [CompanyName], [City] From [Customers]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server"/>
           
    </form>
  </body>
</html>

posted on 2006-10-27 10:50  javaca88  阅读(347)  评论(0编辑  收藏  举报