UWP:PropertySet查找引发异常

时间:2016-04-24 15:07:12

标签: windows-runtime win-universal-app msdn windows-10-universal c++-cx

Windows.Foundation.Collections有一个名为PropertySet的集合,根据MSDN有一个lookup方法返回:

  

如果存在具有指定键的项目,则为该值; 否则,null

当我尝试以下操作时,我得到(意外)异常:

try
{
    auto propertySet = ref new Windows::Foundation::Collections::PropertySet();
    auto something = propertySet->Lookup("nothing");
    if (something != nullptr)
    {
        // Something was found :|
    }
    else 
    {
        // Found nothing :)
    }
}catch(Platform::Exception^ e)
{
    //Exception: e->Message
}

e->Message是:

  

该操作尝试访问有效范围之外的数据

我在MSDN上找不到关于此问题的任何内容。

我在这里做错了什么,或者这是微软错误\错误的文档?

编辑:

1-我正在使用带有SDK版本10.0.10240.0的Windows 10

2-我使用的是C ++ / CX,而不是C#(如果不清楚的话)

1 个答案:

答案 0 :(得分:4)

文档不正确。我会要求修复它。如果密钥不存在,Lookup会引发Platform::OutOfBoundsException(内部:E_BOUNDS)。要检查密钥是否存在,请使用HasKey方法。

相关问题