21 Eylül 2017 Perşembe

Asp.net Gridview filtreleme

Merhaba Arkadaşlar ,

Bu sefer ki  yazımda , Asp.net Web form Gridview de nasıl filtreleme yapılır basit bir kod parcacığı ile göstermeye çalışacağım. Filtrelemeden kasıt olarak , bazen uygulamamızda tüm  verileri listeledikten sonra , belirli bir isme sahip insanları görmek  veya belirli bir değere sahip verileri filtreleyip listelemek isteriz.

Ben uygulamam da , tüm öğrencileri listeledikten sonra ,fakülte ve isme göre filtreleme işlemi yaptım. Bunu yapar iken de code behind alanına hiç bir kod yazmadım. Aspx sayfasında bu işlemi Sql data source ve filter expression kullanarak hallettim.

ASPX Sayfası :



<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Filter Deneme</title>

</head>
<body>
    <form id="form1" runat="server">
    <h3>Northwind Employees</h3>

        <table cellspacing="10">           
          <tr>
            <td valign="top">
              <table border="0">
                <tr>
                  <td valign="top">Faculty</td>
                  <td>
                 <asp:DropDownList runat="server" id="FacultyFilterBox" AppendDataBoundItems="True"
                   DataSourceID="FacultySqlDataSource"
                   DataTextField="FacultyName" AutoPostBack="true" DataValueField="FacultyName" >
                        <asp:ListItem Selected="True" Value="" >(Hepsi)</asp:ListItem>
                      </asp:DropDownList>
                  </td>                     
                </tr>
                <tr>
                  <td>Name</td>
                  <td><asp:TextBox runat="server" id="NameTextBox" Text="*" /></td>
                </tr>
                <tr>
                  <td></td>
                  <td><asp:Button runat="server" id="FilterButton" Text="Filtrele" /></td>
                </tr>
              </table>
            </td>

            <td valign="top">               
              <asp:GridView ID="EmployeesGridView"
                DataSourceID="StudentSqlDataSource"
                AutoGenerateColumns="false"
                AllowSorting="true"
                  
                Gridlines="Both"
                RunAt="server">

                <HeaderStyle backcolor="Navy"
                  forecolor="White"/>

                <RowStyle backcolor="White"/>

                <AlternatingRowStyle backcolor="LightGray"/>

                <EditRowStyle backcolor="LightCyan"/>

                <Columns>                 
                  <asp:BoundField DataField="StudentName" HeaderText="StudentName"/>                   
                  <asp:BoundField DataField="StudentFaculty"  HeaderText="StudentFaculty"/>
                  <asp:BoundField DataField="StudentDepartmant"   HeaderText="StudentDepartmant"/>             
                  <asp:BoundField DataField="StudentAdress"    HeaderText="StudentAdress"/>                   
                </Columns>                
              </asp:GridView>
            </td>               
          </tr>           
        </table>

<!--  AkinsoftConnect  : Web config içerisinde içerisinde tanımlanan connection stringe verilen –add name-  alanın değeridir.-->

        <asp:SqlDataSource ID="FacultySqlDataSource"
          SelectCommand="select FacultyName from Faculty"
          EnableCaching="True"
          CacheDuration="60"
          ConnectionString="<%$ ConnectionStrings:AkinSoftConnect %>"
          RunAt="server"/>


        <asp:SqlDataSource ID="StudentSqlDataSource"
          SelectCommand="select StudentName, StudentFaculty, StudentDepartmant, StudentAdress from Student"
          EnableCaching="True"
          CacheDuration="60"
          ConnectionString="<%$ ConnectionStrings:AkinSoftConnect %>"
          FilterExpression="StudentFaculty LIKE '{0}' AND StudentName LIKE '{1}'"
          RunAt="server">

<!--  filter expression içerisinde yer alan  {0} ve {1} parametre sırasısını belirtmektedir.-->

          <FilterParameters>
            <asp:ControlParameter  ControlID="FacultyFilterBox"   PropertyName="SelectedValue" />
            <asp:ControlParameter  ControlID="NameTextBox" PropertyName="Text" />
          </FilterParameters>

        </asp:SqlDataSource>


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




Umarım İşinize yarar. Herhangi bir sorun da iletişime geçebilirsiniz.İyi çalışmalar






DataTable To List Object - C#

Merhaba Arkadaşlar , Daha önce kullandığım kısa bir kod parçasını sizinlede paylaşmak istedim.  Elimizde bulunan bir Datatable ı nasıl ...

Popüler Yayınlar