Hello Everyone,
How can I select all images through select checkbox from listview then click on button. I have find code from google then used inside button click,
- private void chkbtn_click(object sender, MouseButtonEventArgs e)
- {
- if (objTble_Documents.Count() != 0)
- {
- try
- {
- PrintDocument pd = new PrintDocument();
- pd.PrintPage += new PrintPageEventHandler(PrintPage);
- System.Windows.Forms.PrintDialog pdi = new System.Windows.Forms.PrintDialog();
- pdi.Document = pd;
- if (pdi.ShowDialog() == System.Windows.Forms.DialogResult.OK)
- {
- pd.Print();
- }
- else
- {
- MessageBox.Show("Print Cancelled");
- }
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
- }
- }
After applied this code,
- private void PrintPage(object o, PrintPageEventArgs e)
- {
- List<ListViewItemsData> objListViewItemsData = new List<ListViewItemsData>();
- DMSBusinessLayer service = new DMSBusinessLayer();
- List<DocumentsUser> objTble_Documents = new List<DocumentsUser>();
- int UserId = 0;
- string ImgName = string.Empty;
- foreach (DocumentsUser item in listView1.SelectedItems)
- {
- UserId = Convert.ToInt32(item.UserId);
- ImgName = item.Parent_File_Name;
- objTble_Documents = service.PrintUserDocuments(ImgName, UserId).AsEnumerable().Select(m => new DocumentsUser()
- {
- Child_File_Name = m.Field<string>("Child_File_Name"),
- FilePath = m.Field<string>("FilePath"),
- Parent_File_Name = m.Field<string>("Parent_File_Name")
- }).ToList();
- }
-
- foreach (var i in objTble_Documents)
- {
- objListViewItemsData.Add(new ListViewItemsData()
- {
- GridViewColumnName_ImageSource = (Convert.ToString(i.FilePath) + Convert.ToString(i.Parent_File_Name) + "_" + Convert.ToString(i.Child_File_Name)),
- });
- }
-
- foreach (var ii in objListViewItemsData)
- {
- System.Drawing.Image img = System.Drawing.Image.FromFile(ii.GridViewColumnName_ImageSource.ToString());
- System.Drawing.Rectangle m = e.MarginBounds;
-
- if ((double)img.Width / (double)img.Height > (double)m.Width / (double)m.Height)
- {
- m.Height = (int)((double)img.Height / (double)img.Width * (double)m.Width);
- }
- else
- {
- m.Width = (int)((double)img.Width / (double)img.Height * (double)m.Height);
- }
- e.Graphics.DrawImage(img, m);
- }
- }
But run this much of code, printing only one image, that last image from the loop. How can I solve this issue? Please help me...