예제 #1
0
 private void Export()
 {
     var sb = new StringBuilder();
     using (var xmlWriter = new XamlXmlWriter(sb))
     {
         designSurface.SaveDesigner(xmlWriter);
     }
     var xamlCode = sb.ToString();
 }
예제 #2
0
        private void SaveDesigner()
        {
            try
            {
                _isSavingDesigner = true;

                var vm = this.DataContext as XamlDocument;

                var sb = new StringBuilder();

                using (var xamlWriter = new ICSharpCode.WpfDesign.XamlDom.XamlXmlWriter(sb))
                {
                    designControl.SaveDesigner(xamlWriter);
                    vm.AvalonDocument.Text = XamlFormatter.Format(sb.ToString());
                }

                _isSavingDesigner = false;
            }
            catch (Exception)
            {
            }
        }
예제 #3
0
        void UpdateXaml()
        {
            var sb = new StringBuilder();
            using (var xmlWriter = new XamlXmlWriter(sb)) {
                DesignSurface.SaveDesigner(xmlWriter);
                Dictionary<XamlElementLineInfo, XamlElementLineInfo> d;
                Text = XamlFormatter.Format(sb.ToString(), out d);

                if (DesignSurface.DesignContext.Services.Selection.PrimarySelection != null)
                {
                    var item = DesignSurface.DesignContext.Services.Selection.PrimarySelection;
                    var line = ((PositionXmlElement) ((XamlDesignItem) item).XamlObject.XmlElement).LineNumber;
                    var pos = (((XamlDesignItem)item).XamlObject.PositionXmlElement).LinePosition;
                    var newP = d.FirstOrDefault(x => x.Key.LineNumber == line && x.Key.LinePosition == pos);
                    XamlElementLineInfo = newP.Value;
                }
            }
        }
예제 #4
0
 void UpdateXaml()
 {
     var sb = new StringBuilder();
     using (var xmlWriter = new XamlXmlWriter(sb)) {
         DesignSurface.SaveDesigner(xmlWriter);
         Text = XamlFormatter.Format(sb.ToString());
     }
 }