C# 基于另一列在GridView中隐藏单元格
我有以下GridView:C# 基于另一列在GridView中隐藏单元格,c#,asp.net,gridview,visual-studio-2012,C#,Asp.net,Gridview,Visual Studio 2012,我有以下GridView: <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="SysInvoiceID" DataSourceID="SqlDataSource1"> <Columns> <asp:BoundField DataField="InvoiceID" Header
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="SysInvoiceID" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="InvoiceID" HeaderText="SysInvoiceID" ReadOnly="True" SortExpression="SysInvoiceID" />
<asp:BoundField DataField="BillMonth" HeaderText="BillMonth" SortExpression="BillMonth" />
<asp:BoundField DataField="InvoiceDate" HeaderText="InvoiceDate" ReadOnly="True" SortExpression="InvoiceDate" />
<asp:BoundField DataField="InvoiceNumber" HeaderText="InvoiceNumber" SortExpression="InvoiceNumber" />
<asp:BoundField DataField="Net" HeaderText="Net" SortExpression="Net" />
<asp:BoundField DataField="VAT" HeaderText="VAT" SortExpression="VAT" />
<asp:BoundField DataField="Gross" HeaderText="Gross" SortExpression="Gross" />
<asp:ButtonField CommandName="ViewInvoice" HeaderText=" " ShowHeader="True" Text="View" />
</Columns>
</asp:GridView>
最后一列(ButtonField)是我自己创建的,只是为了在每一行中包含文本“View”,单击该文本将显示PDF发票
我不确定这是否可行,但我想知道是否可以为该列或其他内容添加某种验证,以便在“InvoiceID”列为空时,相应行上的“View”链接不会显示
通过在VisualStudio中使用“分割视图”,然后在GridView任务上使用“编辑列”按钮,我感觉接近完成此操作,但正如我所说的,我不确定是否有可能以这种方式完成此操作,并且可能不得不求助于简单的编码
谢谢你的帮助 使用
而不是
然后在页面中添加一个IsEmpty(stringid)
方法或任何类型的id,然后先检查它是否为空
您还可以向按钮添加一个CommandArgument
属性,该属性将允许您指定该按钮的参数。使用
而不是
然后在页面中添加一个IsEmpty(stringid)
方法或任何类型的id,然后先检查它是否为空
您还可以向按钮添加一个CommandArgument
属性,该属性将允许您指定该按钮的参数。使用
而不是
然后在页面中添加一个IsEmpty(stringid)
方法或任何类型的id,然后先检查它是否为空
您还可以向按钮添加一个CommandArgument
属性,该属性将允许您指定该按钮的参数。使用
而不是
然后在页面中添加一个IsEmpty(stringid)
方法或任何类型的id,然后先检查它是否为空
您还可以向按钮添加一个CommandArgument
属性,该属性将允许您指定该按钮的参数。使用占位符
<asp:Placeholder runat="server" ID="plView" Visible="<%# Convert.ToBoolean(InvoiceID == null) ? false : true %>">
<asp:ButtonField CommandName="ViewInvoice" HeaderText=" " ShowHeader="True" Text="View" />
</asp:Placeholder>
使用占位符
<asp:Placeholder runat="server" ID="plView" Visible="<%# Convert.ToBoolean(InvoiceID == null) ? false : true %>">
<asp:ButtonField CommandName="ViewInvoice" HeaderText=" " ShowHeader="True" Text="View" />
</asp:Placeholder>
使用占位符
<asp:Placeholder runat="server" ID="plView" Visible="<%# Convert.ToBoolean(InvoiceID == null) ? false : true %>">
<asp:ButtonField CommandName="ViewInvoice" HeaderText=" " ShowHeader="True" Text="View" />
</asp:Placeholder>
使用占位符
<asp:Placeholder runat="server" ID="plView" Visible="<%# Convert.ToBoolean(InvoiceID == null) ? false : true %>">
<asp:ButtonField CommandName="ViewInvoice" HeaderText=" " ShowHeader="True" Text="View" />
</asp:Placeholder>
我需要使用CommandName=“ViewInvoice”,否则我的其余代码将无法工作。已保存我的一天并避免打开新问题。谢谢。我需要使用CommandName=“ViewInvoice”,否则我的其余代码将无法工作。节省了我的时间,避免了打开新问题。谢谢。我需要使用CommandName=“ViewInvoice”,否则我的其余代码将无法工作。节省了我的时间,避免了打开新问题。谢谢。我需要使用CommandName=“ViewInvoice”,否则我的其余代码将无法工作。节省了我的时间,避免了打开新问题。非常感谢。