使用IronPython和Visual Studio 2010进行GUI开发

使用IronPython和Visual Studio 2010进行GUI开发,第1张

使用IronPython和Visual Studio 2010进行GUI开发

在IronPython 2.7中,wpf.LoadComponent方法将连接名称与XAML UI元素相同的所有属性。如果使用IronPython
2.6,则需要使用WombatPM建议的代码。因此,对于IronPython 2.7,如果您使用以下XAML:

<Window        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        title="IronPyWpf" Height="300" Width="300">    <Grid>        <Button x:Name="button" Content="Button" Height="23" HorizontalAlignment="Left" Margin="103,226,0,0" VerticalAlignment="Top" Width="75"  />        <TextBox x:Name="textbox" Height="182" HorizontalAlignment="Left" Margin="24,21,0,0" VerticalAlignment="Top" Width="237" />    </Grid></Window>

然后,您可以定义两个属性,分别称为button和textbox,以访问UI元素:

class MyWindow(Window):    def __init__(self):        wpf.LoadComponent(self, 'IronPyWpf.xaml')        self._button.Content = 'My Button'        self._textbox.Text = 'My Text'    def get_button(self):        return self._button    def set_button(self, value):        self._button = value    button = property(get_button, set_button)    def get_textbox(self):        return self._textbox    def set_textbox(self, value):        self._textbox = value    textbox = property(get_textbox, set_textbox)

实际上,您似乎可以通过删除属性定义来进一步简化代码:

class MyWindow(Window):    def __init__(self):        wpf.LoadComponent(self, 'IronPyWpf.xaml')        self.button.Content = 'My Button'        self.textbox.Text = 'My Text'

不幸的是,正如您已经看到的那样,当您尝试编辑XAML并给UI元素命名时,Visual Studio似乎崩溃了,并且具有空引用异常。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5673436.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存