| «« New Music | Changing Object Nesting in XAML »» |
|
About
I'm Ryan Lowe, a Software Engineering graduate living in Ottawa, Canada. I like agile software development and Ruby on Rails.
I write this blog in Canadian English and don't use a spell checker. Typos happen.
Projects
» Full-time Ruby on Rails freelancer
» Full-time with Rails since May 2005 » Former committer for RadRails (now Aptana) » I also have a few Rails side-projects in development: 1. wheretogoinTO.com Toronto nightlife 2. Hey Heads Up! TODO list and sharing 3. Layered Genealogy family history research 4. foos for foosball scoring 5. fanconcert for music fans (on hold) Hiring Rails developers? I can telecommute by the hour from Ottawa, Canada »» Email: rails AT ryanlowe DOT ca
BulletBlog
Now hosted on Hey! Heads Up -- check it out!
Syndication
Pings
Recent
Derek Lowe's (Ryan's older brother) words at Ryan's funeral
blog@ryanlowe.ca no more Forging Email Headers: Good, Bad or Ugly? Sarcastic Dictionary (Part 1 of Many) Tags Hierarchies Twisting Rails is Risky Business Risky Business? My Take on Early Alphas Whoa, it's August 2007 Closing Comments A Postscript to "Growth at the grassroots" »» All Blog Posts
Linkage
del.icio.us/ryanlowe
technorati/ryanlowe.ca/blog Aurora Roy Jim Andrew Trasker Travis Kibbee Karen Dr. Unk Ayana Van Bloggers Joel Spolsky Robert Scoble Tim Bray Dave Winer Raymond Chen James Robertson Ruby/Rails Bloggers rubyonrails.org weblog David Heinemeier Hansson Dave Thomas James Duncan Davidson Mike Clark Jamis Buck Signal vs. Noise Tobias Luetke Amy Hoy: (24)slash7 Jeremy Voorhis Eclipse Bloggers Planet Eclipse EclipseZone Luis de la Rosa Eclipse Foundation Kim Horne Billy Biggs Ian Skerrett Mike Milinkovich Bjorn Freeman-Benson Denis Roy
Archives
|
Parsing XAML with Code In It Dynamically
Watching people learn about Longhorn technology and actually discuss it with Microsoft employees is pretty far out. It'll probably take months for people to digest and ask about all of the details. An interesting topic that came up was the notion of "dynamic" XAML, comparing to dynamic HTML. After HTML has been interpreted by the page renderer, JavaScript can alter the DOM tree of the displayed page by inserting or taking away DOM elements representing HTML. Then the renderer shows the new DOM tree and it appears as though HTML has been added or taken away. When XAML and/or code is compiled you get bytecode. Object properties can be defined in either the XAML or code and are combined during compilation to arrive at one defined object (incidentally, which has precendence?). The question is, after the program is compiled can compiled code insert more XAML into the "XAML DOM tree"? (which doesn't actually exist after compilation if it ever did) And the answer is no yes. Update: What Chris said was that you can't use def:Code fragments in XAML parsed by code. I was a bit confused there. :) I have turned this large post into two because it covers different topics. Posted at November 13, 2003 at 02:42 AM ESTLast updated November 13, 2003 at 02:42 AM EST Comments
>> The question is, after the program is compiled can compiled code insert more XAML into the "XAML DOM tree"? (which doesn't actually exist after compilation if it ever did) And the answer is no, says Chris. That isn't right. When an event happens (a button Click, the Page Loaded event happens, etc...) you can have code run. The tree of Elements is fully dynamic. You can create new Elements: Button b1 = new Button(); //in C# You can add those elements to the tree: You can remove elements. DHTML brought the ability to have declarative markup and to change the tree during runtime (without a navigation) -- Avalon is not a step backwards here at all. » Posted by: Rob Relyea at November 13, 2003 08:41 AMAhh, well that's good. :) » Posted by: Ryan at November 13, 2003 08:57 AM |