2014-10-11 68 views
1

有人可以帮忙指出这段代码可能有什么问题吗?c#datagridview多页打印

我有一个代码的特定教程提取的问题,它从C#中的datagridview输出printpreview。我发现虽然iterration不起作用,所以我用for循环换了它。但是多页面代码存在问题。它会生成似乎是无限数量的同一个溢出第一页的页面,而不是使用e.HasMorePages参数将打印分割成多个页面。某些时候参数是否需要设置为false?

我跟着这个视频 https://www.youtube.com/watch?v=WlphP7cYE98

似乎有一个代码提取物类似于在这个网站上的视频为例:

http://www.cyberforum.ru/windows-forms/thread1065047.html

 height = 100; 
     while (i > dataGridView1.Rows.Count) 
     { 
      if (height > e.MarginBounds.Height) 
      { 
       height = 100; 
       e.HasMorePages = true; 
       return; 
      } 

      height += dataGridView1.Rows[0].Height; 
     //.... 

     i++ 
+0

除了这个网站,其中包含一个类似的代码片段http://www.w3-farsi.com/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9 %BE D8%%B1%D9%8A%D9%86%D8%AA-%DA%AF%D8%B1%D9%81%D8%AA%D9%86-%D8%A7%D8%B2-datagridview的/ – dazleer 2014-10-11 22:34:09

+0

我认为似乎有一个类似的解决方案作为问题发布,它可以从datagridview中获得多个页面,解决方案代码可以在这里找到(命名为:“DataGridViewTestApplication.rar”)http://arabteam2000-forum.com /index.php/topic/281581-%D9%85%D8%B4%D8%B1%D9%88%D8%B9-%D9%84%D8%B7%D8%A8%D8%A7%D8%B9 %D8%A9-%D8%A7%D9%84%D8%AF%D8%A7%D8%AA%D8%A7-%D8%AC%D8%B1%D9%8A%D8%AF-%D9% 81%D9%8A%D9%88-%D9%88%D8%A7%D8%B1%D9%8A%D8%AF-%D8%A7%D9%84%D8%AA%D8%B9%D8% AF%D9%8A%D9%84%D8%B9%D9%84%D9%8A%D9%87/ – dazleer 2014-10-12 14:09:15

+0

http://www.dreamincode.net/forums/topic/316227-some-problems-understanding-如何使用的,ehasmorepages和设定 - 缩放/ – dazleer 2014-10-12 21:03:38

回答

1

多个页面不起作用。 你从未

e.HasMorePages =假

的最后几页,它只会创造连续的页面,也不会停止!