[IronPython] using XAML in IronPython

Dino Viehland dinov at microsoft.com
Sat Jul 10 00:28:25 CEST 2010


The next release of Ipy Tools (and IronPython 2.7) will greatly simplify this.  You'll be able to call clr.LoadComponent and point at your XAML file and your Window subclass.  It'll then automatically add all of the x:Name (and Name'd) elements onto your Window subclass so you can just do "self.hello.Text" or whatever w/o having to pull the values from the instance using FindName or other methods.

From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Andrew Evans
Sent: Friday, July 09, 2010 3:23 PM
To: Discussion of IronPython
Subject: Re: [IronPython] using XAML in IronPython

ahh yes that's right I was using the development environment you linked. Thanks for the insight into my issue makes sense now
On Fri, Jul 9, 2010 at 3:14 PM, Andrew Evans <evans.d.andrew at gmail.com<mailto:evans.d.andrew at gmail.com>> wrote:
Hello I am learning IronPython having come from a CPython background, I started learning C# to add more to my knowledge base for IronPython.

I have a few questions using XAML:

First if I build something using the xaml designer in IronPython Studio and give it a name x:name="somename" and want to reference it in a function def doSomething(s, e): how do I reference the item with the x:name value do I just type somename = changePropertyofControl? and how do I call the function?

XAML

<Window
       xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
       xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
       Title="Hello World" Height="300" Width="300">
       <Button x:Name="hello">Click Me</Button>
</Window>

Python Code is where I am confused

import clr
clr.AddReference('PresentationFramework')

from System.Windows.Markup import XamlReader
from System.Windows import Application
from System.IO import FileStream, FileMode

app = Application()

def doSomething(sender,event):
    hello.Content = "Try again"


app.Run(XamlReader.Load(FileStream('Hello_World.xaml', FileMode.Open)))

This I am sure is really simple... Coming from a Tk background its confusing for me.

Anyway ty

Cheers

Andrew

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20100709/d89e61b0/attachment.html>


More information about the Ironpython-users mailing list