Небольшая предыстория: у меня есть GridView, который содержит список сотрудников.Над GridView у меня есть текстовое поле поиска и LinkButtons, которые служат моими элементами управления GridView: добавление, редактирование, удаление и генерация отчетов.
Теперь вернемся к основному вопросу: можно ли выбрать элемент в моем GridView, а затем нажать «Создать отчеты», чтобы создать отчет, содержащий все строки для этого выбранного элемента?Если так, как бы я поступил в выполнении этой задачи?Есть ли более эффективный способ сделать это?Спасибо!
Вот мой код моего GridView:
<div style="margin-left:5px; margin-bottom:50px">
<div style="margin-bottom:5px; margin-top:5px">
<asp:TextBox ID="txtSearchEquip" runat="server" BorderColor="#666666" style="margin-bottom: 10px; text-align: left;" Width="317px" ForeColor="Black" Height="30px" ></asp:TextBox>
<asp:Button ID="btnSearchEquip" runat="server" Text="Search" Height="30px"/>
<asp:Button ID="btnClearEquip" runat="server" Text="Clear" Height="30px"/>
</div>
<asp:GridView ID="gvPersonnelEquipment" CssClass="EU_DataTable" runat="server" AutoGenerateColumns="False" DataKeyNames="SequipID" DataSourceID="SqlDataSource1" AllowPaging="True" AllowSorting="True" PageSize="6" OnRowDataBound="gvEquipment_RowDataBound" OnRowCommand="gvPersonnelEquipment_RowCommand">
<Columns>
<asp:CommandField ShowSelectButton="True" />
<asp:BoundField DataField="SequipID" HeaderText="ID" InsertVisible="False" ReadOnly="True" SortExpression="SequipID" />
<asp:BoundField DataField="SempID" HeaderText="Employee ID" SortExpression="SempID" />
<asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
<asp:BoundField DataField="Equipment" HeaderText="Equipment" SortExpression="Equipment" />
<asp:BoundField DataField="MakeModelNo" HeaderText="Model Number" SortExpression="MakeModelNo" />
<asp:BoundField DataField="PropertyTagNo" HeaderText="Property Tag Number" SortExpression="PropertyTagNo" />
<asp:BoundField DataField="SerialNumber" HeaderText="Serial Number" SortExpression="SerialNumber" />
<asp:BoundField DataField="Cost" HeaderText="Cost" SortExpression="Cost" />
<asp:BoundField DataField="EquipmentStatus" HeaderText="Equipment Status" SortExpression="EquipmentStatus" />
<asp:BoundField DataField="Remarks" HeaderText="Remarks" SortExpression="Remarks" />
<asp:BoundField DataField="IssuedBy" HeaderText="Issued By" SortExpression="IssuedBy" />
<asp:BoundField DataField="DateIssued" HeaderText="Date Issued" SortExpression="DateIssued" />
<asp:BoundField DataField="RetDate" HeaderText="Return Date" SortExpression="RetDate" />
<asp:BoundField DataField="ReceivedBy" HeaderText="Received By" SortExpression="ReceivedBy" />
<%--<asp:BoundField DataField="Status" HeaderText="Status" SortExpression="Status" />--%>
</Columns>
<SelectedRowStyle BackColor="#54a1e5" Font-Bold="True" ForeColor="#CCFF99" />
</asp:GridView>
</div>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:SecurityDBConnectionString2 %>" SelectCommand="SELECT * FROM [SecurityPersonnelEquipment] WHERE ([Status] = @Status)" FilterExpression="[Name] LIKE '{0}%' OR [Equipment] LIKE '{1}%' OR [EquipmentStatus] LIKE '{2}%' ">
<SelectParameters>
<asp:Parameter DefaultValue="1" Name="Status" Type="Int32" />
</SelectParameters>
<FilterParameters>
<asp:ControlParameter ControlID="txtSearchEquip" Name="Name" PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="txtSearchEquip" Name="Equipment" PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="txtSearchEquip" Name="EquipmentStatus" PropertyName="Text" Type="String" ConvertEmptyStringToNull="false"/>
</FilterParameters>
</asp:SqlDataSource>
<!-- End of Personnel Equipment GridView -->
</div>