Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当使用触摸界面访问时,组合框会导致应用程序崩溃,但可以使用鼠标_C#_Wcf_Windows Runtime_Windows Store Apps_Winrt Xaml - Fatal编程技术网

C# 当使用触摸界面访问时,组合框会导致应用程序崩溃,但可以使用鼠标

C# 当使用触摸界面访问时,组合框会导致应用程序崩溃,但可以使用鼠标,c#,wcf,windows-runtime,windows-store-apps,winrt-xaml,C#,Wcf,Windows Runtime,Windows Store Apps,Winrt Xaml,我有一个组合框,显示数据库中存储库的列表,我唯一的事件是DropDownOpen事件,在此期间,我访问数据库以获取要显示的项目列表 使用鼠标打开组合框并选择一个项目,一切都很好,但是当我使用触摸屏(在Windows8或surface上)时,会出现问题 当我第一次打开组合框并选择一个列表时,没有问题,但是在我选择了一个项目之后,如果我再次尝试打开列表,应用程序就会崩溃 下面是组合框的xaml: <ComboBox x:Name="RepositoryComboBox" Grid.Ro

我有一个组合框,显示数据库中存储库的列表,我唯一的事件是DropDownOpen事件,在此期间,我访问数据库以获取要显示的项目列表

使用鼠标打开组合框并选择一个项目,一切都很好,但是当我使用触摸屏(在Windows8或surface上)时,会出现问题

当我第一次打开组合框并选择一个列表时,没有问题,但是在我选择了一个项目之后,如果我再次尝试打开列表,应用程序就会崩溃

下面是组合框的xaml:

    <ComboBox x:Name="RepositoryComboBox" Grid.Row="3" Grid.Column="1"  SelectedItem="{Binding SelectedRepository, Mode=TwoWay}" ItemsSource="{Binding RepositoryList, Mode=TwoWay}" 
                   Style="{StaticResource ComboBoxStyle}"  IsEnabled="True" DropDownOpened="ReposDrop"/>
你知道是什么导致了这个问题吗

编辑这是我遇到的错误

    Exception   {"Error HRESULT E_FAIL has been returned from a call to a COM component."}

您的
ViewModel.GetRepositories()
调用可能会更新后台线程上的列表内容。如果你不呼叫它,检查它是否仍然崩溃。您也可以尝试延迟呼叫,例如使用
等待任务。延迟(100)
,以防
组合框在打开时不希望其内容更新。

如果存储库列表不包含任何元素,则应用程序将崩溃,因此向空列表添加虚拟元素解决了问题。不知道它为什么会出现这个问题,或者为什么它只在使用触摸输入时崩溃。这个问题解决了吗?在exacpt相同的场景中,我也得到了exacpt相同的错误
    Exception   {"Error HRESULT E_FAIL has been returned from a call to a COM component."}