我有一个需要移动到托盘的 WPF 应用程序。它目前直接在 UI 中启动,并且有两个选项卡。在第二个选项卡上,有几个可折叠的容器,用于保存关联设备的设置。可以动态添加或删除设备。
我添加了托盘应用程序,并添加了代码以从应用程序调用设置。一切正常,除了可折叠的容器是空的。我已经跟踪了代码以确认它们应该有对象。
如果我将默认应用程序设置为 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 不是很熟悉,想知道是否有在 VS 2008 中调试 xaml 的好方法。我在 2010 年和 2012 年找到了工具,以及 2005 年的一些旧帖子,它们提供了基本的解决方法,但是我2007 年没有发现太多。
我也希望有人可能知道当 UI 作为启动项目启动时可能导致它正常工作的原因,但在从另一个项目调用时却不知道。该项目最初是作为启动项目的 UI 开发的,如果有帮助的话,托盘是一个单独的项目。UI 还由驻留在主项目文件夹和 UI 文件夹中的几个类组成。但是,似乎正在访问所有 xaml(创建了具有 CollapsibleSection 的类的其他部分)。
没有抛出异常。
附加信息
我还尝试添加一个 test-textblock 以查看未绑定的文本是否会出现在发件人中,但仍然没有显示任何内容。添加的代码如下:
<TextBlock Name="testTextBlock">
<ContentControl Content="This is just a test... " Foreground="Red">/ContentControl>
</TextBlock>
感谢您的任何帮助。