组合框的默认选定索引使我的UWP应用程序崩溃

时间:2017-11-08 10:47:27

标签: uwp winrt-xaml uwp-xaml c++-cx

为什么默认选择的索引不起作用?它崩溃了平台异常:

<ComboBox x:Name="dCmbControl" x:Uid="dCmbControl" SelectionChanged="ComboBox_SelectionChanged" SelectedIndex="0" ItemsSource="{x:Bind abc}"/>

RumTime错误:

Exception thrown at 0x00007FFDEF7F7788 (KernelBase.dll) in abc.exe: 0x40080201: WinRT originate error (parameters: 0x00000000802B000A, 0x000000000000003E, 0x00000066746FBB90).
Exception thrown at 0x00007FFDEF7F7788 in abc.exe: Microsoft C++ exception: Platform::COMException ^ at memory location 0x00000066746FC0E0. HRESULT:0x802B000A The text associated with this error code could not be found.

我做错了什么?

2 个答案:

答案 0 :(得分:2)

SelectedIndex设置为0时,ComboBox正在尝试访问其第一个子项以选择它。加载XAML时,将构建控件并将SelectedIndex初始化为0.这将更新相关的SelectedItem属性,但由于此时仍然没有可用的项,因此会引发异常。

不幸的是,引发的异常不包含任何有关此内容的详细信息(在C#中也是如此)。

您可以在XAML中将值设置为-1,并在加载组合框后将其更新为您想要的(通过后面的代码或通过绑定)。

答案 1 :(得分:0)

我有类似的问题。 我所做的是在我需要设置之前手动将列表中的项目(与我在x:bind中使用的列表相同)添加到组合框中。这样,它总是在您需要时加载。

相关问题