我写的程序有好多dataGridView需要实现打印,但我以前一直用的是报表打印,从来没有直接打印过dataGridView。
现在一点思路也没有,请高手指导指导,

解决方案 »

  1.   


        <script language="javascript">
        function       preview()  
    {  
    bdhtml=window.document.body.innerHTML;  
    sprnstr="<!--startprint-->";  
    eprnstr="<!--endprint-->";  
    prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);  
    prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));  
    window.document.body.innerHTML=prnhtml;  
    window.print();  
    }  
        </script>    <form id="form1" runat="server">
          <!--startprint-->
                <asp:GridView ID="gvSumDetails" runat="server" AutoGenerateColumns="False" BorderColor="#DAE6F5"
                    BorderStyle="Solid" HorizontalAlign="Center" Width="100%" OnSelectedIndexChanged="gvSumDetails_SelectedIndexChanged">
                    <Columns>
                        <asp:BoundField DataField="kdanhao" HeaderText="出库单号" />
                        <asp:BoundField DataField="docdate" HeaderText="出库时间" />
                        <asp:BoundField DataField="warehouse" HeaderText="出库货位" />
                        <asp:BoundField DataField="luru" HeaderText="业务员" />
                        <asp:BoundField DataField="wareid" HeaderText="商品编码" />
                        <asp:BoundField DataField="ware" ItemStyle-HorizontalAlign="left" HeaderText="商品名称" />
                        <asp:BoundField DataField="num" HeaderText="数量" />
                        <asp:BoundField DataField="npiprice" HeaderText="价格" />
                        <asp:BoundField DataField="jiage" HeaderText="含税金额" />
                        <asp:BoundField DataField="npiamount" HeaderText="不含税金额" /> 
                    </Columns>
                    <RowStyle BackColor="#F4F8FC" BorderColor="#F4F8FC" CssClass="txt_12" Height="21px"
            HorizontalAlign="Center" />
        <PagerStyle BackColor="#DAE6F5" Font-Italic="False" Font-Names="宋体" Font-Overline="False"
            Font-Size="10pt" Font-Strikeout="False" Font-Underline="False" ForeColor="#26539D"
            Wrap="True" />
        <HeaderStyle BackColor="#DAE6F5" Font-Bold="False" Font-Names="宋体" Font-Overline="False"
            Font-Size="10pt" ForeColor="#26539D" Height="25px" HorizontalAlign="Center" />
                </asp:GridView>
                <!--endprint-->
    </form>
    <asp:Button ID="Button1" runat="server" Text="打 印" CssClass="submit" Width="72px" OnClientClick="preview();" />
      

  2.   

     <!--startprint-->
    打印中间的所有东西
    <!--endprint-->打印还是用报表,操作灵活,
      

  3.   

    看看这个:http://www.cnblogs.com/heekui/archive/2007/05/29/764531.html