IronPython - WPF窗口不显示,但不知道为什么
问题描述:
我在VS社区2017中使用IronPython。我有一个奇怪的问题,我不明白,我敢肯定很简单,但不能找到其他人,让我更加困惑。IronPython - WPF窗口不显示,但不知道为什么
我有这个非常简单的代码来尝试操纵xaml中定义的框中的文本值。
class MyWindow(Window):
def __init__(self):
wpf.LoadComponent(self, 'WpfApplication1.xaml')
win = MyWindow()
win.Test = win.FindName('test')
win.Test.Text = 'Hello, World'
Application().Run(win)
XAML
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="WpfApplication1" Height="300" Width="420.408">
<TextBox x:Name="Test" MinWidth="100" Margin="14,79,98,155"/>
</Window>
显然,这并不做任何事情有趣的是,和我只是想学习,但是这个很基本的挂断没有任何意义,我。 *我想从上面的python中分离出XAML,但是这个网站上的编辑器超出了奇怪的地步。
答
我想通了这个问题。计划正在出错。还不习惯在VS社区进行调试,不像VBA那么直观,这是我最习惯的。我相信这可能是由于默认设置,试图找出如何让它提供更多的反馈比它,因为我在错误列表中显示没有错误显然是不正确的。
所以错误是我试图分配win.FindName('测试')win.Test。我在其他地方看过类似的东西,并且在此之前也有问题,所以我不确定要尝试什么,但是现在我知道我可以通过几种不同的方式做到这一点
1)Test = win .FindName( '测试')(不包括胜利。在开始)
Test.Text = '你好,世界'
或者,简单
2)win.Test.Text =“你好,世界'
我觉得我早些时候尝试过第二个,但它现在正在工作,所以我肯定还有其他东西被打破了。
当前工作的代码
import wpf
from System.Windows import Application, Window
class MyWindow(Window):
def __init__(self):
wpf.LoadComponent(self, 'WpfApplication1.xaml')
win = MyWindow()
Test = win.FindName('Test')
Test.Text = 'Hello, World'
Application().Run(win)
有小幅回调以上为好,显然win.Test = win.FindName(“测试”)是好的,它只是一切是大小写敏感的,这是另一回事我还不太习惯于来自VBA,而这往往没有那么多。 –