예제 #1
0
		public void Visit(RootNode node, INode parentNode)
		{
			action(node, parentNode);
		}
예제 #2
0
		static void Visit (RootNode rootnode, HydratationContext visitorContext)
		{
			rootnode.Accept (new XamlNodeVisitor ((node, parent) => node.Parent = parent), null); //set parents for {StaticResource}
			rootnode.Accept (new ExpandMarkupsVisitor (visitorContext), null);
			rootnode.Accept (new NamescopingVisitor (visitorContext), null); //set namescopes for {x:Reference}
			rootnode.Accept (new CreateValuesVisitor (visitorContext), null);
			rootnode.Accept (new RegisterXNamesVisitor (visitorContext), null);
			rootnode.Accept (new FillResourceDictionariesVisitor (visitorContext), null);
			rootnode.Accept (new ApplyPropertiesVisitor (visitorContext, true), null);
		}
예제 #3
0
		public void Visit(RootNode node, INode parentNode)
		{
			var rnode = (XamlLoader.RuntimeRootNode)node;
			Values[node] = rnode.Root;
			Context.Types[node] = rnode.Root.GetType();
			var bindableRoot = rnode.Root as BindableObject;
			if (bindableRoot != null)
				NameScope.SetNameScope(bindableRoot, node.Namescope);
		}
예제 #4
0
		public void Visit(RootNode node, INode parentNode)
		{
		}
예제 #5
0
		public void Visit(RootNode node, INode parentNode)
		{
			var ns = new NameScope();
			node.Namescope = ns;
			scopes[node] = ns;
		}
예제 #6
0
		public static void ParseXaml(RootNode rootNode, XmlReader reader)
		{
			var attributes = ParseXamlAttributes(reader);
			rootNode.Properties.AddRange(attributes);
			ParseXamlElementFor(rootNode, reader);
		}
예제 #7
0
 public void Visit(RootNode node, INode parentNode)
 {
 }
예제 #8
0
 public void Visit(RootNode node, INode parentNode)
 => _scopes[node] = node.Namescope = new NameScope();
예제 #9
0
 public void Visit(RootNode node, INode parentNode)
 {
     Visit((ElementNode)node, parentNode);
 }