我有一个 WPF“向导”,我在其中使用 PageFunction 对象来显示向导中的各个页面。其中一些页面使用对应用程序内其他程序集中的对象的引用,因此用户可以选择他们想要包含在生成的输出中的“包”。在页面函数中,我将保持活动标志设置为 true,以便当用户在向导中按下取消或完成时,我可以捕获向导结果和用户选择的相应数据。
问题是即使在创建向导页面的范围已退出之后,向导页面也永远不会消失,因此,当我尝试从集合中删除向导数据绑定到的引用对象之一时,它会导致向导页面抛出异常。如果不将 KeepAlive 标志设置为 false,我似乎无法找到解决此问题的方法,但这会破坏从向导捕获用户数据的能力。
有任何想法吗?
谢谢!