Xamarin 2.3.3.193 和 ItemTemplate

Xamarin 2.3.3.193 and ItemTemplate

我已经在我的 Xamarin 项目中更新了 Xamarin Forms。现在这段代码不再有效了。

var view = (View)ItemTemplate.CreateContent();
if (view != null) {
    var bindableObject = view as BindableObject;
    if (bindableObject != null)
        bindableObject.BindingContext = newItem;
    _imageStack.Children.Add(view);
}

问题是(View)ItemTemplate.CreateContent()出错:

Message: Can't resolve name on Element

Source: Xamarin.Forms.Xaml

Stack: at Xamarin.Forms.Xaml.ReferenceExtension.ProvideValue (System.IServiceProvider serviceProvider) [0x000b6] in [...]

调试window中我可以看到以下信息

02-20 17:44:04.450 I/art     (13331): Starting a blocking GC Explicit
02-20 17:44:04.482 I/art     (13331): Explicit concurrent mark sweep GC freed 436(24KB) AllocSpace objects, 0(0B) LOS objects, 21% free, 14MB/18MB, paused 762us total 31.310ms
02-20 17:44:04.482 I/System  (13331): FinalizerDaemon: finalize objects = 48
02-20 17:44:04.484 D/Mono    (13331): GC_TAR_BRIDGE bridges 20 objects 20 opaque 0 colors 20 colors-bridged 20 colors-visible 20 xref 0 cache-hit 0 cache-semihit 0 cache-miss 0 setup 0.11ms tarjan 0.06ms scc-setup 0.08ms gather-xref 0.00ms xref-setup 0.00ms cleanup 0.30ms
02-20 17:44:04.484 D/Mono    (13331): GC_BRIDGE: Complete, was running for 34.10ms
02-20 17:44:04.484 D/Mono    (13331): GC_MINOR: (Nursery full) time 4.22ms, stw 4.53ms promoted 32K major size: 3504K in use: 2748K los size: 6404K in use: 5406K

我的函数以 ImageSource 格式将相机中的图像保存在内存中,byte[] 和该图像的 length in byte

这表示您正在加载的 XAML 包含 {x:Reference foo} 标记扩展,并且在运行时,在层次结构中找不到使用 x:Name="foo" 定义的元素。

在没有看到您的 XAML 的情况下,无法判断问题是出在您的代码中,还是 Xamarin.Forms.

中的错误