我有一个WPF应用程序,我需要移动到一个托盘。它目前直接在UI中启动,并且有两个选项卡。在第二个选项卡上,有几个可折叠的容器用于保存关联设备的设置。设备可以动态添加或删除。调试WPF XAML
我已添加托盘应用程序,并添加了代码以调用应用程序的设置。一切正常,除了可折叠的容器是空的。我追踪了代码以确认他们应该有对象。
我觉得奇怪的是,如果我将默认应用程序设置为UI,但它们在从托盘启动UI时不起作用。我已经包含下面的XAML的一部分:
<c:CollapsibleSection Header="Senders">
<c:CollapsibleSection.CollapsedContent>
<c:RepeatControl Margin="30,0,0,0" ItemsSource="{Binding SendersList}"
ItemType="{x:Type m:Sender}" List="{Binding SendersList}"
ItemTemplate="{StaticResource SenderSummary}"/>
</c:CollapsibleSection.CollapsedContent>
<Border BorderThickness="1" BorderBrush="Chocolate" Margin="30,0,0,0">
<c:RepeatControl ItemsSource="{Binding SendersList}" ItemType="{x:Type m:Sender}" List="{Binding SendersList}" ItemTemplate="{StaticResource SenderTemplate}"/>
</Border>
</c:CollapsibleSection>
我不是很熟悉WPF,并想知道如果有,我发现的工具在2010年和2012年进行调试在VS 2008的XAML的好方法,以及2005年的几个旧帖子提供了基本的解决方法,但2007年的搜索量并不多。
我也希望有人可能知道什么可能会导致它在UI作为启动时启动时正常工作项目,但不从另一个项目调用。该项目最初是作为启动项目的UI开发的,托盘是一个单独的项目,如果有帮助的话。 UI也由几个类组成,这两个类都驻留在主项目文件夹和UI文件夹中。但是,似乎所有的xaml都被访问(创建了CollapsibleSection的类的其他部分)。
没有抛出异常。
附加信息
我也尝试添加一个测试文本块,看是否绑定文本将出现在发件人,但仍没有显示出来。添加的代码如下:
<TextBlock Name="testTextBlock">
<ContentControl Content="This is just a test... " Foreground="Red">/ContentControl>
</TextBlock>
感谢您的任何帮助。
我对Visual Studio 5的最高愿望是调试XAML。您可以将PresentationTrace设置为高来获得输出。 – Paparazzi
谢谢Blam,回复。不幸的是,PresentationTrace似乎是VS 2010中的一个功能。该项目于2008年开发。我想现在是时候将其转换。再次,谢谢。 – Tim
如果你要转换,然后去2012年。PresentationTrace高不是一个真正的调试器。我只是输出绑定错误。 – Paparazzi