Well.... it sounds like the new model is going to be a great improvement 
for Python developers on several fronts - buuuuut.... that means every 
online example currently available will be wrong (and I can't write my 
Silverlight chapter until you make the changes) !

:-)

Michael Foord
http://www.manning.com/foord

Jimmy Schementi wrote:
> Michael,
>
> You've got it. The programming model for Silverlight 1.1 C# apps will be 
> similar to WPF (aka. code-first and optional XAML loading). We will be 
> adhering to that general idea, but making it fit right with dynamic languages.
>
> ~Jimmy
>
> ________________________________________
> From: [EMAIL PROTECTED] [EMAIL PROTECTED] On Behalf Of Michael Foord [EMAIL 
> PROTECTED]
> Sent: Friday, September 14, 2007 1:49 AM
> To: Discussion of IronPython
> Subject: Re: [IronPython] [python] Re: Using Silverlight Controls from 
> IronPython (Uhmm... it doesn't look like you can)
>
> Ok Jimmy - I'm reassured.
>
> When you say "We're already in the progress of removing x:Code", does
> that mean that the technique for creating Silverlight / IronPython
> applications will change ?
>
> All the best,
>
> Michael Foord
> http://www.manning.com/foord
>
>
> Jimmy Schementi wrote:
>   
>> Michael,
>>
>> Thanks for finding this. Like John said, this is a known issue, however we 
>> were not aware it was per application! We are investigating how best to fix 
>> this, be it talking to the right people to get the XAML parser updated or 
>> removing the dependency on x:Code, whichever comes first. =) We're already 
>> in the progress of removing x:Code, since it's the root of this and other 
>> Silverlight+DLR integration issues.
>>
>> Rest-assured, using C# controls in a DLR language is a scenario we 
>> definitely want to enable!
>>
>> As a "today" work-around, you could do as John suggests, however you can't 
>> call into that "real" event handler since it's private. You either have to 
>> pass on the event handler (which in this case isn't a big deal as it's just 
>> an event to continue the button hover animation), or rebuild the event 
>> handler in Python. In this case, it's simply:
>>
>> def PulseStoryboardCompleted(s, e):
>>         s.Begin()
>>
>> For other situations, you have the code for the controls, so building them 
>> in Python *should* be trivial. I agree, it's a completely un-ideal solution, 
>> but that'll get you working today.
>>
>> ~Jimmy
>>
>>
>>
>>     
>>> -----Original Message-----
>>> From: [EMAIL PROTECTED] [mailto:users-
>>> [EMAIL PROTECTED] On Behalf Of Michael Foord
>>> Sent: Thursday, September 13, 2007 3:22 PM
>>> To: Discussion of IronPython
>>> Subject: Re: [IronPython] [python] Re: Using Silverlight Controls from
>>> IronPython (Uhmm... it doesn't look like you can)
>>>
>>> John Messerly wrote:
>>>
>>>       
>>>> Sounds like a bug in XAML event binding...
>>>>
>>>> In the Silverlight 1.1 alpha, if the XAML contains an x:Code element,
>>>>
>>>>         
>>> then the XAML parser will always go to DLR/IronPython for event hookup.
>>> That is to say, it will never use reflection to hook the event to a
>>> statically defined C# method. That is a known limitation.
>>>
>>>       
>>>> I thought this behavior was per-XAML file, but from what you're
>>>>
>>>>         
>>> describing it sounds like it's per application.
>>>
>>>       
>>>> The only workaround I can think of would be to define a function in
>>>>
>>>>         
>>> your Python code for that event ("PulseStoryboardCompleted"), and then
>>> from that function call into the "real" event handler.
>>>
>>> That means I need to know the details of what the XAML is hooking up
>>> (which I don't) and it also means that I can't use prebuilt controls
>>> from IronPython which is a major restriction. :-(
>>>
>>> Can you apply some gentle pressure in the right places? Jim Hugunin
>>> showed this working in their Vegas Mix talk - so it would be a shame to
>>> lose it as basically it means that you can't use IronPython to create
>>> rich user interfaces except completely from scratch.
>>>
>>> All the best,
>>>
>>>
>>> Michael Foord
>>> http://www.ironpython.info/
>>>
>>>
>>>       
>>>> Hope this helps,
>>>> John
>>>>
>>>> -----Original Message-----
>>>> From: [EMAIL PROTECTED] [mailto:users-
>>>>
>>>>         
>>> [EMAIL PROTECTED] On Behalf Of Michael Foord
>>>
>>>       
>>>> Sent: Wednesday, September 05, 2007 2:23 PM
>>>> To: Discussion of IronPython
>>>> Subject: [IronPython] Using Silverlight Controls from IronPython
>>>>
>>>>         
>>> (Uhmm... it doesn't look like you can)
>>>
>>>       
>>>> Hello all,
>>>>
>>>> I'm having an issue using Silverlight controls (compiled assemblies)
>>>> from C#. Something is going wrong with member name resolution and
>>>>
>>>>         
>>> XAML
>>>
>>>       
>>>> interactions.
>>>>
>>>> I've had this with controls I've created myself, but it also happens
>>>> with the sample controls project in the Silverlight 1.1 Refresh SDK.
>>>>
>>>> If you try adding a reference to the 'Button' class and using it from
>>>> IronPython, then Silverlight bombs out with the following message:
>>>>
>>>> Exception Details: System.MissingMethodException: Event handler
>>>> 'PulseStoryboardCompleted' is not defined
>>>>
>>>> PulseStoryBoardCompleted is setup in XAML (embedded as a resource in
>>>>
>>>>         
>>> the
>>>
>>>       
>>>> assembly). This exception kills Silverlight - it cannot be caught at
>>>>
>>>>         
>>> the
>>>
>>>       
>>>> IronPython level.
>>>>
>>>> To illustrate this, try the following IronPython code:
>>>>
>>>> import clr
>>>> clr.AddReference("Silverlight.Samples.Controls, Version=1.0.0.0,
>>>> Culture=neutral, PublicKeyToken=null")
>>>> from Silverlight.Samples.Controls import Button
>>>>
>>>> b = Button()
>>>>
>>>>
>>>> Any suggestions as to a way round this ?
>>>>
>>>>
>>>> All the best,
>>>>
>>>>
>>>> Michael Foord
>>>> http://www.ironpython.info/
>>>>
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> [email protected]
>>>> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>>>> _______________________________________________
>>>> Users mailing list
>>>> [email protected]
>>>> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>         
>>> _______________________________________________
>>> Users mailing list
>>> [email protected]
>>> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>>>
>>>       
>> _______________________________________________
>> Users mailing list
>> [email protected]
>> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>>
>>     
>
> _______________________________________________
> Users mailing list
> [email protected]
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
> _______________________________________________
> Users mailing list
> [email protected]
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>   

_______________________________________________
Users mailing list
[email protected]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

Reply via email to