Silverlight doesn't support ICustomTypeDescriptor -- that's probably why binding is failing. You need to emit CLR properties to use data binding with Silverlight 2 and 3.
2009/11/12 Shri Borde <shri.bo...@microsoft.com> > So the new clrtype.py still works - cool! > > > > I am not an expert on data binding, so I don't have any suggestions. Why do > you say that the decorator approach will not work with Silverlight? Does > @notifiy_property from > http://gui-at.blogspot.com/2009/11/inotifypropertychanged-in-ironpython.htmluse > any feature not available in Silverlight? > > > > *From:* Lukas Cenovsky [mailto:cenov...@bakalari.cz] > *Sent:* Thursday, November 12, 2009 8:09 AM > *To:* Shri Borde > *Subject:* Re: [IronPython] .NET attributes for methods > > > > Thanks, that works! > > What do you think would be the best approach to create notifiable > properties for Silverlight? I did it for WPF (via decorators: > http://gui-at.blogspot.com/2009/11/inotifypropertychanged-in-ironpython.html) > but it seems to me it won't be possible to do it similarly for > Silverlight... > > -- > -- Lukáš > > Shri Borde wrote: > > Can you use "_clrproperties" instead of "_clrfields"? DevHawk's same > created a field and a property even when you just used "_clrfields". I don't > do that anymore. So you will need to use "_clrproperties" to get properties, > which SL must use for data binding. > > > > *From:* users-boun...@lists.ironpython.com [ > mailto:users-boun...@lists.ironpython.com<users-boun...@lists.ironpython.com>] > *On Behalf Of *Lukas Cenovsky > *Sent:* Wednesday, November 11, 2009 2:37 AM > *To:* Discussion of IronPython > *Subject:* Re: [IronPython] .NET attributes for methods > > > > I did change __metaclass__ to ClrMetaclass. See the attached source I use > for testing - the only difference is to comment/uncomment appropriate part > in product.py. > > The outputs look the same, there are no visible exceptions: > > DevHawk: > > py> a.root.FindName('listbox1').ItemsSource[0].GetType().GetFields() > > => Array[FieldInfo]((<System.Reflection.RtFieldInfo object at > 0x000000000000002B [Double cost]>, > > <System.Reflection.RtFieldInfo object at 0x000000000000002C [Int32 quantity]>, > > <System.Reflection.RtFieldInfo object at 0x000000000000002D [System.String > name]>, > > <System.Reflection.RtFieldInfo object at 0x000000000000002E > [IronPython.Runtime.Types.PythonType .class]>, > > <System.Reflection.RtFieldInfo object at 0x000000000000002F > [IronPython.Runtime.PythonDictionary .dict]>, > > <System.Reflection.RtFieldInfo object at 0x0000000000000030 [System.Object[] > .slots_and_weakref]>)) > > > Shri: > > py> a.root.FindName('listbox1').ItemsSource[0].GetType().GetFields() > > => Array[FieldInfo]((<System.Reflection.RtFieldInfo object at > 0x000000000000002B [Double cost]>, > > <System.Reflection.RtFieldInfo object at 0x000000000000002C [Int32 quantity]>, > > <System.Reflection.RtFieldInfo object at 0x000000000000002D [System.String > name]>, > > <System.Reflection.RtFieldInfo object at 0x000000000000002E > [IronPython.Runtime.Types.PythonType .class]>, > > <System.Reflection.RtFieldInfo object at 0x000000000000002F > [IronPython.Runtime.PythonDictionary .dict]>, > > <System.Reflection.RtFieldInfo object at 0x0000000000000030 [System.Object[] > .slots_and_weakref]>)) > > > > -- > -- Lukáš > > > Shri Borde wrote: > > Note that you will have to set __metaclass__ to ClrMetaclass, not > ClrTypeMetaclass as in DevHawk's sample. I had changed the name of the type. > The old name will cause a NameError, but maybe SL is hiding exceptions. Can > you do "o.GetType().GetFields()" and display that on the page to inspect the > object and also make sure that no exceptions were thrown? > > > > *From:* users-boun...@lists.ironpython.com [ > mailto:users-boun...@lists.ironpython.com<users-boun...@lists.ironpython.com>] > *On Behalf Of *Lukas Cenovsky > *Sent:* Tuesday, November 10, 2009 2:59 PM > *To:* Discussion of IronPython > *Subject:* Re: [IronPython] .NET attributes for methods > > > > I have just found that the Silverlight binding does not work with this > version of clrtype and/or IronPython 2.6RC2. > I used DevHawk demo [1] and after I added reference to Microsoft.Dynamic in > clrtypemetaclass.py it worked flawlessly. But when I switch to your version, > no items show in the listbox. > > By the way - I have seen a commit message you have added support for > interfaces - nice! ;-) > > -- > -- Lukáš > > [1] > http://cid-0d9bc809858885a4.skydrive.live.com/self.aspx/DevHawk%20Content/IronPython%20Stuff/^_^_clrtype^_^_/SL%20databinding%20demo.zip<http://cid-0d9bc809858885a4.skydrive.live.com/self.aspx/DevHawk%20Content/IronPython%20Stuff/%5E_%5E_clrtype%5E_%5E_/SL%20databinding%20demo.zip> > > > > _______________________________________________ > Users mailing list > Users@lists.ironpython.com > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > >
_______________________________________________ Users mailing list Users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com