I am simply trying to get the handle to a WPF window, but it doesn't seem to be working. I am as new to WPF as I am to IronPython so please forgive me :)
>From what I have read I believe the handle is not getting set in __init__
>because it is only available at run_time(?)
Therefore, have to add Loaded="Window_Loaded" in MyWindow.xaml so that handle
is guaranteed to be set after window is loaded(?)
However, this requires a routed event handler which, I know nothing about but I
do know the line:
((MyWindow)(target)).Loaded +=
System.Windows.RoutedEventHandler(this.Window_Loaded);
Works in C#, not sure what the equivalent line would be in IronPython?
Please help, I simply want to run MyWindow and get a handle to it!
Here is a snippet of my code:
class MyWindow(Window):
def __init__(self):
wpf.LoadComponent(self, 'WpfApp_Test.xaml')
self.hWnd = WindowInteropHelper(self).Handle #self.hWnd is not getting
set
dir(self.hWnd)
def Window_Loaded(self):
self.hWnd = WindowInteropHelper(self).Handle #never gets called
if __name__ == '__main__':
Application().Run(MyWindow())
#((MyWindow)(target)).Loaded +=
System.Windows.RoutedEventHandler(MyWindow().Window_Loaded)
Actual, WPF IronPython app (VS2010) is contained in .zip folder attached (just
need to rename .zzz to .zip and decompress)
Cheers,
Jackie
WpfApp_Test.zzz
Description: WpfApp_Test.zzz
_______________________________________________ Ironpython-users mailing list [email protected] http://mail.python.org/mailman/listinfo/ironpython-users
