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.

ObjectDataSourceFilteringEventArgs الفئة

Visual Studio 2010

توفر بيانات للحدث Filtering التابع لعنصر التحكم ObjectDataSource.

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

public class ObjectDataSourceFilteringEventArgs : CancelEventArgs

The ObjectDataSourceFilteringEventArgs class is used to pass data to the Filtering event handler of the ObjectDataSource control. مجموعة أسماء السمات وقيم التي تم إضافتها إلى عنصر إدخال تقديمه ل ParameterValuesعنصر تحكم. You can cancel the Select method by setting the Cancel property of the ObjectDataSourceFilteringEventArgs to true.

هذا مقطع يحتوي على الثاني بالتعليمات البرمجية الأمثلة. يمكنك إضافة السمات إضافى إلى عنصر إدخال تقديمه استخدام ObjectDataSourceالأسلوب تشغيل GridViewخاصية. يحصل على مرجع إلى مجموعة الخصائص للعنصر التسمية تقديمه عنصر تحكم.

مجموعة أسماء السمات و قيم التي تم إضافتها إلى العنصر التسمية تقديمه ل ObjectDataSource.GridView ObjectDataSource خاصية DataSetعنصر التحكم هو تقديم و dهوplayed باستخدام عنصر HTML التسمية عنصر.DataTable يمكنك إضافة السمات إضافى إلى العنصر التسمية تقديمه استخدام SelectMethodالأسلوب تشغيل DataSetخاصية.DataTable

The code example consists of a TextBox control, a GridView control, the ObjectDataSource control, and a Submit button. النص البرمجي للكمبيوتر العميل Regهوters لإعادة النشر قبل للتقديم تشغيل العميل في حالة إنشاء TextBoxهو . تعرض GridViewتشغيل العميل.TextBox To retrieve data for another employee, in the TextBox control, type the full name of the employee, and then click the Submit button.

قم بحفظ التغييرات إلى FilterExpressionعرض الالولاية منذ وقت تم نشر الصفحة مرة أخرى إلى الخادم.SelectMethod الكائن الذي يحتوي على التغييرات التي تم إجراؤها FilterParametersالولاية العرض؛ otherwهوe، في الولاية عدم وجود الولاية العرض هو المقترنة مع الكائن، . عرض الولاية هو تجميع قيم لخصائص عنصر تحكم الخادم. يتم وضع هذه قيم تلقائياً في الخصائص لعنصر تحكم الملقم، الذي هو مثيل فئة. The FilterParameters collection contains one parameter, a FormParameter object that is bound to the TextBox control.

If no name is specified in the TextBox control, a new parameter is added to the ParameterValues collection so that the search is successful.

ملاحظة الأمانملاحظة الأمان

يحتوي هذا المثال على مربع النص الذي يقبل إدخال المستخدم مما يعد تهديد أمان محتمل. بشكل افتراضي، تتحقق صفحات ويب ASP.NET من أن مُدخلات المستخدم لا تتضمن برنامج نصي أو عناصر HTML. لمزيد من المعلومات، راجع نظرة عامة حول عمليات استغلال البرنامج النصي.


<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="Samples.AspNet.CS" %>
<%@ 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">

    protected void ObjectDataSource1_Filtering(object sender, ObjectDataSourceFilteringEventArgs e)
    {
        if (Textbox1.Text == "")
        {
            e.ParameterValues.Clear();
            e.ParameterValues.Add("FullName", "Nancy Davolio");
        }
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ObjectDataSource - C# Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <p>Show all users with the following name.</p>

        <asp:textbox id="Textbox1" runat="server" text="Nancy Davolio" />

        <asp:gridview
          id="GridView1"
          runat="server"
          datasourceid="ObjectDataSource1"
          autogeneratecolumns="False">
          <columns>
            <asp:boundfield headertext="ID" datafield="EmpID" />
            <asp:boundfield headertext="Name" datafield="FullName" />
            <asp:boundfield headertext="Street Address" datafield="Address" />
          </columns>
        </asp:gridview>

        <!-- Security Note: The ObjectDataSource uses a FormParameter,
             Security Note: which does not perform validation of input from the client. -->

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployeesAsDataSet"
          typename="Samples.AspNet.CS.EmployeeLogic"
          filterexpression="FullName='{0}'" OnFiltering="ObjectDataSource1_Filtering">
            <filterparameters>
              <asp:formparameter name="FullName" formfield="Textbox1" defaultvalue="Nancy Davolio" />
            </filterparameters>
        </asp:objectdatasource>

        <p><asp:button id="Button1" runat="server" text="Search" /></p>

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


عندما تقوم بتأليف عنصر تحكم s خادم مخصص، يمكنك تحسين الكفاءة بتجاوز وتعديلها خاصية للملقم الخاص بك عنصر تحكم. إذا كانت الحالةله تم تغييره؛ وإلا. EmployeeLogic وNorthwindEmployee EmployeeLogicيحدد التي تم نشرهاNorthwindEmployeeالولاية. يرفع عند نشر بيانات الخاصة عنصر تحكم قد تغير.EmployeeLogic التشغيلحدث.


namespace Samples.AspNet.CS {

using System;
using System.Collections;
using System.Data;
using System.Web.UI.WebControls;
  //
  // EmployeeLogic is a stateless business object that encapsulates 
  // the operations you can perform on a NorthwindEmployee object.
  //
  public class EmployeeLogic {


    // Returns a collection of NorthwindEmployee objects.
    public static ICollection GetAllEmployees () {
      ArrayList data = new ArrayList();

      data.Add(new NorthwindEmployee(1,"Nancy","Davolio","507 - 20th Ave. E. Apt. 2A"));
      data.Add(new NorthwindEmployee(2,"Andrew","Fuller","908 W. Capital Way"));
      data.Add(new NorthwindEmployee(3,"Janet","Leverling","722 Moss Bay Blvd."));
      data.Add(new NorthwindEmployee(4,"Margaret","Peacock","4110 Old Redmond Rd."));
      data.Add(new NorthwindEmployee(5,"Steven","Buchanan","14 Garrett Hill"));
      data.Add(new NorthwindEmployee(6,"Michael","Suyama","Coventry House Miner Rd."));
      data.Add(new NorthwindEmployee(7,"Robert","King","Edgeham Hollow Winchester Way"));

      return data;
    }

    public static NorthwindEmployee GetEmployee(object anID) {
      ArrayList data = GetAllEmployees() as ArrayList;     
      int empID = Int32.Parse(anID.ToString());      
      return data[empID] as NorthwindEmployee;
    }

    // 
    // To support basic filtering, the employees cannot
    // be returned as an array of objects, rather as a 
    // DataSet of the raw data values. 
    public static DataSet GetAllEmployeesAsDataSet () {
      ICollection employees = GetAllEmployees();

      DataSet ds = new DataSet("Table");

      // Create the schema of the DataTable.
      DataTable dt = new DataTable();
      DataColumn dc;
      dc = new DataColumn("EmpID",   typeof(int));    dt.Columns.Add(dc);
      dc = new DataColumn("FullName",typeof(string)); dt.Columns.Add(dc);
      dc = new DataColumn("Address", typeof(string)); dt.Columns.Add(dc);

      // Add rows to the DataTable.
      DataRow row;

      foreach (NorthwindEmployee ne in employees) {                
        row = dt.NewRow();
        row["EmpID"]    = ne.EmpID;
        row["FullName"] = ne.FullName;
        row["Address"]  = ne.Address;
        dt.Rows.Add(row);
      } 
      // Add the complete DataTable to the DataSet.
      ds.Tables.Add(dt);

      return ds;
    }    
  }

  public class NorthwindEmployee {

    public NorthwindEmployee (int anID, 
                              string aFirstName,
                              string aLastName,
                              string anAddress) {
      ID = anID;
      firstName = aFirstName;
      lastName = aLastName;   
      address = anAddress;
    }

    private object ID;
    public string EmpID {
      get { return ID.ToString();  }
    }

    private string lastName;
    public string LastName {
      get { return lastName; }
      set { lastName = value; }
    }

    private string firstName;
    public string FirstName {
      get { return firstName; }
      set { firstName = value;  }
    }

    public string FullName {
      get { return FirstName  + " " +  LastName; }
    }

    private string address;
    public string Address {
      get { return address; }
      set { address = value;  }
    }    

  }
}


System.Object
  System.EventArgs
    System.ComponentModel.CancelEventArgs
      System.Web.UI.WebControls.ObjectDataSourceFilteringEventArgs

يتم تأمين العملية الجزئية لأي عضو عمومي ثابت (مشترك في Visual Basic) من هذا النوع. لن يتم ضمان تأمين العملية الجزئية لأي عضو مثيل.

نظام التشغيل 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
إظهار: