Esempio n. 1
1
        /// <summary>
        /// Clones a PageContent based on its original
        /// </summary>
        /// <param name="OriginalPage">Original PageContent</param>
        /// <returns>Cloned PageContent</returns>
        public static PageContent ClonePage(PageContent OriginalPage)
        {
            PageContent pcReturn = new PageContent();
            if (object.ReferenceEquals(OriginalPage, null) == false)
            {
                FixedPage fpTemplate = OriginalPage.GetPageRoot(true);
                pcReturn.Child = new FixedPage();

                pcReturn.Child.Width = fpTemplate.Width;
                pcReturn.Child.Height = fpTemplate.Height;
                pcReturn.Child.MinHeight = fpTemplate.MinHeight;
                pcReturn.Child.MinWidth = fpTemplate.MinWidth;
                pcReturn.Child.MaxHeight = fpTemplate.MaxHeight;
                pcReturn.Child.MaxWidth = fpTemplate.MaxWidth;

                foreach (System.Windows.UIElement obj in fpTemplate.Children)
                {
                    string s = System.Windows.Markup.XamlWriter.Save(obj);
                    System.IO.StringReader stringReader = new System.IO.StringReader(s);
                    System.Xml.XmlReader xmlReader = System.Xml.XmlTextReader.Create(stringReader, new System.Xml.XmlReaderSettings());
                    pcReturn.Child.Children.Add((System.Windows.UIElement)System.Windows.Markup.XamlReader.Load(xmlReader));
                }
            }

            return pcReturn;
        }
Esempio n. 2
0
 private void AddPages(DocumentReference documentReference, RollUpFixedDocument document)
 {
     var fixedDocument = new FixedDocument();
     documentReference.SetDocument(fixedDocument);
     foreach (var page in document.Pages)
     {
         var pageContent = new PageContent();
         if (page.BaseUri == null)
         {
             ((IAddChild) pageContent).AddChild(page.FixedPage);
         }
         else
         {
             pageContent.Source = page.Source;
             ((IUriContext) pageContent).BaseUri = page.BaseUri;
         }
         pageContent.GetPageRoot(true);
         fixedDocument.Pages.Add(pageContent);
     }
 }
Esempio n. 3
0
 public PageItem(PageContent pageContent)
 {
     PageContent = pageContent;
     FixedPage = PageContent.GetPageRoot(false);
     PageBrush = new VisualBrush(FixedPage);
 }