在DesignTime期间自定义控件转换异常但不是RunTime

时间:2014-11-03 04:11:47

标签: windows-runtime winrt-xaml windows-phone-8.1

在设计期间只处理了一次施法异常,这让我感到疯狂。

我正在尝试为winRT创建一个自定义控件(像Windows Phone 8.1一样的周视图控件)。控件在运行时工作正常但在设计时它给了我COMException。在我调查此COMException的原因期间,我发现在我的控件的一个组件内部存在一个转换异常。此组件是实现ContainerContentChanging事件的自定义列表视图。在这个事件中有一个铸造引发了这个例外。

以下是自定义列表视图类: -

The code is removed coz the source code is shared below.

TemplatedListViewEntry cctor看起来像这样: -

The code is removed coz the source code is shared below.

AppointmentModel: -

The code is removed coz the source code is shared below.

OBS !!!在使用VS或VS + Blend的2个实例进行调试并在此行之前设置断点时,我可以看到args.Item的类型为ContentControl,而在运行时它是AppointmentModel。

可能是ItemsSource在设计时为空的问题吗?

如果是,我应该如何进行并指定_如果否,这里的任何人都可以帮助我找出问题所在?

OBS !!!我需要更多信息请询问,我很乐意与您分享整个代码。

修改1 即使我在自定义Control的cctor中启动了我的viewmodel,它也会在 Designtime 中引发转换异常,而不会在运行时间

中引发

编辑2 在我编写上面的编辑1后,我注意到现在我必须在两种不同的样式(CustomWeekView样式和TemplatedListView样式)中抛出异常,这是因为你在Blend中打开Generic.xaml。这真的很烦人,我现在已经没想到了。这就是为什么我决定分享这个项目的源代码,有人可以帮助看一下它。您将在下面看到源代码。 CustomWeekView

0 个答案:

没有答案