This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

GridViewSelectEventHandler مفوَّض

Visual Studio 2010

تمثل الطريقة التي يعالج SelectedIndexChangingحدث من GridViewعنصر تحكم.

مساحة الاسم:  System.Web.UI.WebControls
التجميع:  System.Web (في System.Web.dll)

public delegate void GridViewSelectEventHandler(
	Object sender,
	GridViewSelectEventArgs e
)

المعلمات

sender
النوع: System.Object
مصدر الحدث.
e
النوع: System.Web.UI.WebControls.GridViewSelectEventArgs
The GridViewSelectEventArgs أسلوب إلى إزالة the النمط located at a particular فهرس.

The SelectedIndexChanging event is raised when a Select button (a button with its CommandName property set to "Select") is clicked, but before the GridView control handles the select operation. The أسلوب إلى retrieve the فهرس of a النمط within the مجموعة.

عندما تقوم بإنشاء GridViewSelectEventHandlerتفويض، تتعرف على الطريقة التي سيقوم بمعالجة حدث. لربط حدث مع معالج الأحداث الخاص بك، قم بإضافة مثيل تفويض للحدث. يتم استدعاء معالج حدث عند حدوث حدث، إلا إذا قمت بإزالة المفوض. للحصول على مزيد من المعلومات حول حدث-المفوضون معالج، راجع أحداث و مفوضون.

يوضح المثال التالي كيفية برمجياً إضافة GridViewSelectEventHandlerتفويض SelectedIndexChangingحدث من GridViewعنصر تحكم.



<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

    void Page_Load(Object sender, EventArgs e)
    {

        // Create a new GridView object.
        GridView authorGridView = new GridView();

        // Set the GridView object's properties.
        authorGridView.ID = "AuthorGridView";
        authorGridView.DataSourceID = "AuthorsSqlDataSource"; 
        authorGridView.AutoGenerateColumns = true;
        authorGridView.AutoGenerateSelectButton = true;
        authorGridView.AllowPaging = true; 
        authorGridView.SelectedIndex = 1;
        authorGridView.SelectedRowStyle.BackColor = System.Drawing.Color.LightCyan;
        authorGridView.SelectedRowStyle.ForeColor = System.Drawing.Color.DarkBlue;
        authorGridView.SelectedRowStyle.Font.Bold = true;

        // Programmatically register the event-handling methods.
        authorGridView.SelectedIndexChanged += new EventHandler(this.AuthorsGridView_SelectedIndexChanged);
        authorGridView.SelectedIndexChanging += new GridViewSelectEventHandler(this.AuthorsGridView_SelectedIndexChanging);

        // Add the GridView object to the Controls collection
        // of the PlaceHolder control.
        GridViewPlaceHolder.Controls.Add(authorGridView);

    }

    void AuthorsGridView_SelectedIndexChanged(Object sender, EventArgs e)
    {

        // Get the currently selected row using the SelectedRow property.
        GridView AuthorsGridView = (GridView)sender;
        GridViewRow row = AuthorsGridView.SelectedRow;

        // Display the author's name from the selected row.
        // In this example, the second and third columns contain
        // the author's last and first name, respectively.
        Message.Text = "You selected " + row.Cells[2].Text +
            " " + row.Cells[1].Text + ".";

    }

    void AuthorsGridView_SelectedIndexChanging(Object sender, GridViewSelectEventArgs e)
    {

        // Get the currently selected row. Because the SelectedIndexChanging event
        // occurs before the select operation in the GridView control, the
        // SelectedRow property cannot be used. Instead, use the Rows collection
        // and the NewSelectedIndex property of the e argument passed to this 
        // event handler.
        GridView AuthorsGridView = (GridView)sender;
        GridViewRow row = AuthorsGridView.Rows[e.NewSelectedIndex];

        // If the user selects an author with the last name White,
        // cancel the selection operation and display an error message.
        if(row.Cells[1].Text == "White")
        {

            e.Cancel = true;
            Message.Text = "You cannot select " + row.Cells[2].Text +
            " " + row.Cells[1].Text + ".";

        }

    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
    <title>GridViewSelectEventHandler Example</title>
</head>
<body>
        <form id="form1" runat="server">

            <h3>GridViewSelectEventHandler Example</h3>

            <asp:placeholder id="GridViewPlaceHolder"
                runat="Server"/>

            <!-- This example uses Microsoft SQL Server and connects -->
            <!-- to the Pubs sample database.                         -->
            <asp:sqldatasource id="AuthorsSqlDataSource"  
                selectcommand="SELECT [au_lname], [au_fname], [address], [city], [state], [zip], [contract] FROM [authors]"
                connectionstring="server=localhost;database=pubs;integrated security=SSPI"
                runat="server">
            </asp:sqldatasource>

            <br/>

            <asp:label id="Message"
                runat="server"/>

        </form>
    </body>
</html>



يوضح المثال التالي كيفية إضافة بشكل إلزامي GridViewSelectEventHandlerتفويض SelectedIndexChangingحدث من GridViewعنصر تحكم.



<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void CustomersGridView_SelectedIndexChanged(Object sender, EventArgs e)
  {

    // Get the currently selected row using the SelectedRow property.
    GridViewRow row = CustomersGridView.SelectedRow;

    // Display the company name from the selected row.
    // In this example, the third column (index 2) contains
    // the company name.
    MessageLabel.Text = "You selected " + row.Cells[2].Text + ".";

  }

  void CustomersGridView_SelectedIndexChanging(Object sender, GridViewSelectEventArgs e)
  {

    // Get the currently selected row. Because the SelectedIndexChanging event
    // occurs before the select operation in the GridView control, the
    // SelectedRow property cannot be used. Instead, use the Rows collection
    // and the NewSelectedIndex property of the e argument passed to this 
    // event handler.
    GridViewRow row = CustomersGridView.Rows[e.NewSelectedIndex];

    // You can cancel the select operation by using the Cancel
    // property. For this example, if the user selects a customer with 
    // the ID "ANATR", the select operation is canceled and an error message
    // is displayed.
    if (row.Cells[1].Text == "ANATR")
    {

      e.Cancel = true;
      MessageLabel.Text = "You cannot select " + row.Cells[2].Text + ".";

    }

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView Select Example</title>
</head>
<body>
    <form id="form1" runat="server">

     <h3>GridView Select Example</h3>

     <asp:gridview id="CustomersGridView" 
       datasourceid="CustomersSource" 
       autogeneratecolumns="False"
       autogenerateselectbutton="True"
       allowpaging="True" 
       selectedindex="1"
       onselectedindexchanged="CustomersGridView_SelectedIndexChanged"
       onselectedindexchanging="CustomersGridView_SelectedIndexChanging"   
       runat="server" DataKeyNames="CustomerID">

         <Columns>
             <asp:BoundField DataField="CustomerID" 
                 HeaderText="CustomerID" 
                 InsertVisible="False" ReadOnly="True" 
                 SortExpression="CustomerID" />
             <asp:BoundField DataField="FirstName" 
                 HeaderText="FirstName" 
                 SortExpression="FirstName" />
             <asp:BoundField DataField="MiddleName" 
                 HeaderText="MiddleName" 
                 SortExpression="MiddleName" />
             <asp:BoundField DataField="LastName" 
                 HeaderText="LastName" 
                 SortExpression="LastName" />
             <asp:BoundField DataField="Phone" 
                 HeaderText="Phone" 
                 SortExpression="Phone" />
         </Columns>

       <selectedrowstyle backcolor="LightCyan"
         forecolor="DarkBlue"
         font-bold="true"/>  

     </asp:gridview>

      <br/>

      <asp:label id="MessageLabel"
        forecolor="Red"
        runat="server"/>

      <!-- 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, FirstName, MiddleName, LastName, Phone FROM SalesLT.Customer"
        connectionstring="<%$ ConnectionStrings:AdventureWorksLTConnectionString %>" 
        runat="server"/>

    </form>
  </body>
</html>



نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0
إظهار: