J'ai un problème je lie des données dans la vue de grille de datasource et là j'obtiens l'information de différent type de statut de commande commence le formulaire 1 à 7. Je ne veux pas afficher les données d'état 7 dans ma vue de grille. pouvez-vous me aider comment nousgrille voir comment cacher les détails d'un type particulier de données lorsque je lie des données dans la vue de la grille dans asp.net?
<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>
et pour utiliser cette source de données i
<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>
Donc, vous voulez masquer les lignes qui ont un code d'état 7? Pourquoi ne les omettez-vous pas dans votre requête sql (sélection d'entité). En outre, vous pouvez utiliser l'événement onrowdatabound (que vous pouvez google) –
Puisque je suppose que vous allez affecter la valeur du paramètre SQL 'WhereClause' dans le code, y a-t-il une raison pour laquelle vous ne pouvez pas ajouter 'AND [Status] < > 7 'à la fin de celui-ci? –
je sais ce Steve mais le problème est que j'utilise l'architecture de nettier qui crée le xml de procédure de magasin si je change et j'ajoute quelque chose en ce qu'il arrête de fonctionner, Sinon je customise ainsi je publie ceci comme personne de génie. –