private void btnProceed_Click(object sender, RoutedEventArgs e)
        {
            if (dgOrders.SelectedIndex == -1) {
                MessageBox.Show("Please Select a Purchase Order.");
                return;
            }

            SelectedPoModel = (PoListModel)dgOrders.SelectedItem;

            asyncLoadItems.Do(PopulateDataForPrinting, PopulateDataForPrinting_Complete);
        }
        private void PrintPurchaseOrder(PoListModel model)
        {
            int PoNumber = model.PONumber;
            string VendorName = model.Vendor;
            string VendorCode = "V-{0}".WithTokens(model.VendorId);
            DateTime DateCreated = DateTime.Now.Date;
            DateTime DeliveryDate = model.DeliveryDate.Date;

            MemoryStream purchaseOrderStream = new MemoryStream();
            pdf.RenderPurchaseOrder(purchaseOrderStream, PoNumber, PoItems, RequestNumber, VendorName, VendorCode, model.VendorAddress, DateCreated, DeliveryDate, RequestUser, CurrentUser);

            SaveFileDialog fd = new SaveFileDialog();
            fd.DefaultExt = ".pdf";
            fd.FileName = "PO" + SelectedPoModel.PONumber;
            fd.Title = "Where do you want to save the document?";
            fd.ShowDialog();

            if (fd.FileName.IsNullOrEmpty()) {
                return;
            }

            File.WriteAllBytes(fd.FileName, purchaseOrderStream.GetBuffer());
            this.Close();
        }