简体   繁体   English

当ASPxSummaryItem中的值为0时隐藏ASPxGridView中的列

[英]Hide columns in ASPxGridView when value in ASPxSummaryItem is 0

Here Is where I have my gridview : 这是我的gridview所在的位置:

<dx:ASPxGridView ID="GridViewID" runat="server" DataSourceID="SourceMain" ClientInstanceName="Grid" SettingsPager-mode="ShowAllRecords" OnHtmlDataCellPrepared="ASPxGridView1_HtmlDataCellPrepared">
 <Columns>
     <dx:GridViewDataTextColumn FieldName="TrackOutDate" VisibleIndex="1" Visible="True"><PropertiesTextEdit DisplayFormatString="MM/dd/yyyy"></PropertiesTextEdit></dx:GridViewDataTextColumn>
     <dx:GridViewDataTextColumn FieldName="LotID" VisibleIndex="2" Visible="True"></dx:GridViewDataTextColumn>
     <dx:GridViewDataTextColumn FieldName="Qty_IN" VisibleIndex="11" Visible="True"></dx:GridViewDataTextColumn>
     <dx:GridViewDataTextColumn FieldName="HX" VisibleIndex="12" Visible="True"></dx:GridViewDataTextColumn>
     <dx:GridViewDataTextColumn FieldName="NA" VisibleIndex="13" Visible="True"></dx:GridViewDataTextColumn>
 </Columns>
    <Settings ShowFooter="true" />
    <TotalSummary> 
    <dx:ASPxSummaryItem FieldName="Qty_IN" SummaryType="Sum" DisplayFormat="{0}" Tag="1" ShowInColumn="Qty_IN"  />
    <dx:ASPxSummaryItem FieldName="HX" SummaryType="Sum" DisplayFormat="{0}"/>
    <dx:ASPxSummaryItem FieldName="NA" SummaryType="Sum" DisplayFormat="{0}"/>
    </TotalSummary>
</dx:ASPxGridView>

And this is the code to fill that gridview : 这是填充该gridview的代码:

protected void SourceMain_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
    lote = getLot();
    device = getDevice();
    stage = getStage();
    location = getLocation();
    equipment = getEquipment();
    SD = Convert.ToDateTime(getStartDate());
    ED = Convert.ToDateTime(getEndtDate());

    MetricsPortal.DAL.ReportsDataClassesDataContext dataContext = new MetricsPortal.DAL.ReportsDataClassesDataContext();
    e.Result = (from items in dataContext.CalculateDailyYieldequipmentParam(lote,device,stage,location,equipment,SD,ED,Evaluation())
                orderby items.TrackOutDate ascending, items.GRANDTOTAL1 descending
                //where items.GRANDTOTAL1 > 0
                select items).Distinct();

}//source Main

Is it possible to remove or hide a column when the total summary of these columns is 0? 当这些列的总和为0时,是否可以删除或隐藏该列?

Ex: enter image description here 例如: 在此处输入图片描述

In the column in yellow the value is 0, can I hide this column in this case? 在黄色列中,值为0,在这种情况下可以隐藏此列吗? and when is not 0 just show the column? 什么时候不是0才显示该列?

actually onselected event is more appropriate any way just GridView1.Columns[yourcolumnindex].Visible = false; 实际上onselected事件更适合GridView1.Columns[yourcolumnindex].Visible = false; and column will disappear. 并且列将消失。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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