توضیحات و دانلود

جستجو و فیلتر كردن اطلاعات در گرید ویو
0 0
جستجو و فیلتر كردن اطلاعات در گرید ویو

گاهی اوقات برای دسترسی سریعتر به اطلاعات باید عمل جستجو وفیلتر را انجام داد در این مقاله قصد داریم نشان دهیم كه چگونه میتوان اطلاعات نشان داده شده در یك گرید ویو را فیلتر یا جستجو كرد

نكته : ما از پایگاه داده Northwind مایكروسافت استفاده میكنیم.

ابتدا یك پروژه ایجاد كنید و دیزاین كدهای زیر را اضافه كنید

مشتریان:
    <asp:TextBox ID="txtSearch" runat="server"></asp:TextBox>
    <asp:Button Text="Search" runat="server" OnClick="Search" />
    <hr />
    <asp:GridView ID="gvCustomers" runat="server" AutoGenerateColumns="false" AllowPaging="true"
        OnPageIndexChanging="OnPaging">
        <Columns>
            <asp:BoundField DataField="ContactName" HeaderText="نام" ItemStyle-Width="150" />
            <asp:BoundField DataField="City" HeaderText="شهر" ItemStyle-Width="150" />
            <asp:BoundField DataField="Country" HeaderText="كشور" ItemStyle-Width="150" />
        </Columns>
    </asp:GridView>

سپس در قسمت كد صفحه namespaces زیر وارد كنید.

using System.Data;
using System.Data.SqlClient;
using System.Configuration;

در داخل رویداد لود صفحه، تابع SearchCustomers را فراخوانی می شود. در تابع SearchCustomers ، ابتدا بررسی می شود كه TextBox Search دارای مقدار یا خالی است.

اگر مقدار داشته باشد، شرط WHERE در Query SQL اضافه می شود و همچنین پارامتر SQL به شیء فرمان منتقل می شود.

در نهایت SQL Query اجرا می شود و نتایج در GridView پر می شود.

protected void Page_Load(object sender, EventArgs e)
    {
        if (!this.IsPostBack)
        {
            this.SearchCustomers();
        }
    }
 
    private void SearchCustomers()
    {
        string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
        using (SqlConnection con = new SqlConnection(constr))
        {
            using (SqlCommand cmd = new SqlCommand())
            {
                string sql = "SELECT CustomerId, ContactName, City, Country FROM Customers";
                if (!string.IsNullOrEmpty(txtSearch.Text.Trim()))
                {
                    sql += " WHERE ContactName LIKE @ContactName + '%'";
                    cmd.Parameters.AddWithValue("@ContactName", txtSearch.Text.Trim());
                }
                cmd.CommandText = sql;
                cmd.Connection = con;
                using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
                {
                    DataTable dt = new DataTable();
                    sda.Fill(dt);
                    gvCustomers.DataSource = dt;
                    gvCustomers.DataBind();
                }
            }
        }
    }

در رویدا كلیك Search تابع SearchCustomers فراخوانی میشود.

protected void Search(object sender, EventArgs e)
    {
        this.SearchCustomers();
    }

برای آنكه بتوانیم در بین صفحات GridView جابجا شویم و اطلات را كامل ببینیم در رویداد OnPaging گرید ویو كدهای زیر را اضافه میكنیم

protected void OnPaging(object sender, GridViewPageEventArgs e)
    {
        gvCustomers.PageIndex = e.NewPageIndex;
        this.SearchCustomers();
    }

 


دانلود
  • لینک های دانلود دوره های آموزشی تا پایان دوره قابل دانلود می باشد.
  • برای خارج کردن فایل ها از حالت فشرده از ورژن جدید نرم افزار winrar استفاده کنید.
  • برای خارج کردن فایل ها از حالت فشرده لینک های دانلودی که چندین قسمت می باشند فقط قسمت اول را از حالت فشرده خارج کنید.
  • لطفا توضیحات نوشته شده برای مطالب را با دقت بخوانید.
  • برای نمایش فیلم ها می توانید از نرم افزار هایی مانند Km Player , VLC Player یا Media Player Classic استفاده کنید.

لینک های دانلود

ارسال نظر
ارسال پیام به :