简体   繁体   中英

grid view how to hide detail of some special type of data when i bind data in grid view in asp.net?

i have a problem i am binding data in grid view from datasource and there i am geting information of different type of order status start form 1 to 7 . i do not want to display the status 7 data in my grid view . can you help me how we

 <data:EntityGridView ID="GridView1" runat="server" AutoGenerateColumns="False" OnSelectedIndexChanged="GridView1_SelectedIndexChanged"
                        DataSourceID="ActiveOrdersDataSource" Width="100%" DataKeyNames="OrderNo" AllowMultiColumnSorting="false"
                         OnRowCommand="GridView1_RowCommond" OnRowDataBound="GridView1_OnRowDataBound"
                        DefaultSortDirection="Descending"  ExcelExportFileName="Export_ActiveOrders.xls">
                        <Columns>
                            <asp:CommandField ShowSelectButton="True" SelectText="Edit" />
                            <asp:BoundField DataField="OrderNo" ItemStyle-HorizontalAlign="Center" HeaderText="Order No" SortExpression="[OrderNo]" />
                            <asp:BoundField DataField="OrderDate" DataFormatString="{0:d}" HtmlEncode="False"
                                HeaderText="Order Date" SortExpression="[OrderDate]" />
                            <asp:BoundField DataField="PickupCompanyName" HeaderText="Pickup Company" SortExpression="[PickupCompanyName]" Visible="false" />
                            <asp:BoundField DataField="DeliveryCompanyName" HeaderText="Delivery Company" SortExpression="[DeliveryCompanyName]" Visible="false"  />
                            <data:HyperLinkField HeaderText="Ac.No." ControlStyle-ForeColor="Black" DataContainer="AccountNumberSource"
                                DataTextField="AccountNumber" />
                                 <data:HyperLinkField HeaderText="Client"  DataContainer="AccountNumberSource"
                                DataTextField="Name" />
                                <asp:BoundField DataField="Caller" ItemStyle-HorizontalAlign="Center" HeaderText="Caller" SortExpression="[Caller]" />
                                 <asp:BoundField DataField="Department" ItemStyle-HorizontalAlign="Center" HeaderText="Department" SortExpression="[Department]" />
                                 <asp:BoundField DataField="Reference" HeaderText="Reference" SortExpression="[Reference]"  />
                            <asp:TemplateField HeaderText="Driver" HeaderStyle-HorizontalAlign="Left">
                                <ItemTemplate>
                                    <asp:Label ID="lblDriver" runat="server" Text='<%#Eval("CurrentDriverNumberSource.Name") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <data:HyperLinkField HeaderText="Service"  ControlStyle-ForeColor="Black" DataContainer="ServiceTypeIdSource"
                                DataTextField="Description" />
                            <data:HyperLinkField HeaderText="Vehicle" ControlStyle-ForeColor="Black" DataContainer="VehicleTypeIdSource"
                                DataTextField="Description" />
                            <asp:TemplateField HeaderText="Status" HeaderStyle-HorizontalAlign="Left">
                                <ItemTemplate>
                                    <asp:Label ID="lblStatus" runat="server" Text='<%#Eval("StatusID") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>

                            <asp:TemplateField HeaderText="TotalAmount" ItemStyle-HorizontalAlign="Center">
                                            <ItemTemplate>
                                            <asp:Label ID="lblAmount" runat="server" Text='<%# Eval("TotalAmount","{0:C2}")%>' ></asp:Label> 
                                            </ItemTemplate>
                                            <ItemStyle HorizontalAlign="Right" />
                                            </asp:TemplateField>

                        </Columns>

                        <EmptyDataTemplate>
                            <b>No Active Orders Found!</b>
                        </EmptyDataTemplate>
                    </data:EntityGridView>

and for datasource i use this

 <data:ActiveOrdersDataSource ID="ActiveOrdersDataSourcebyCompany" runat="server" SelectMethod="GetPaged" EnablePaging="True" EnableSorting="True" EnableDeepLoad="True">
                        <DeepLoadProperties Method="IncludeChildren" Recursive="False">
                            <Types>
                                <data:ActiveOrdersProperty Name="Clients" />
                                <data:ActiveOrdersProperty Name="Companies" />
                                <data:ActiveOrdersProperty Name="Drivers" />
                                <data:ActiveOrdersProperty Name="SalesPeople" />
                                <data:ActiveOrdersProperty Name="ServiceTypes" />
                                <data:ActiveOrdersProperty Name="VehicleTypes" />
                                <data:ActiveOrdersProperty Name="Zones" />
                                </Types>
                        </DeepLoadProperties>
                        <Parameters>
                        <asp:SessionParameter Name="CompanyId" SessionField="CompanyId" Type="String" />
              <data:SqlParameter Name="WhereClause" UseParameterizedFilters ="false">
                          <Filters>

                            <%--<data:CustomParameter Name="WhereClause" Value="" ConvertEmptyStringToNull="false" />
                            <data:CustomParameter Name="OrderByClause" Value="" ConvertEmptyStringToNull="false" />
                            <asp:ControlParameter Name="PageIndex" ControlID="GridView1" PropertyName="PageIndex"
                                Type="Int32" />
                            <asp:ControlParameter Name="PageSize" ControlID="GridView1" PropertyName="PageSize"
                                Type="Int32" />
                            <data:CustomParameter Name="RecordCount" Value="0" Type="Int32" />--%>
                        </Parameters>
                    </data:ActiveOrdersDataSource>

Goutam,

you can use the Filter Tag to set the value you want like:

<Parameters>
  <data:SqlParameter Name="WhereClause" UseParameterizedFilters="false">
    <Filters>
      <data:ChartOfAccountsFilter Column="Status" ComparisionType="NotContains" DefaultValue="7"    />
    </Filters>
  </data:SqlParameter>
</Parameters>

you can make as per this code:

Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
Dim x As String
x = e.Row.Cells(1).Text
Dim y As String
y = e.Row.Cells(8).Text
If Convert.ToInt32(x) <= Convert.ToInt32(y) Then
e.Row.ForeColor = System.Drawing.Color.Blue
End If
End If
End Sub

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM