Uwp应用程序因错误而崩溃-“;应用程序崩溃-参数不正确”;

Uwp应用程序因错误而崩溃-“;应用程序崩溃-参数不正确”;,uwp,crash,Uwp,Crash,我有一个聊天应用程序,当我滚动到顶部的消息时,它经常崩溃 private async Task ScrollIntoViewWithDelayAsync(int message) { await DispatcherHelper.ExecuteOnUIThreadAsync(async () => { try { if (MessageList != null &

我有一个聊天应用程序,当我滚动到顶部的消息时,它经常崩溃

private async Task ScrollIntoViewWithDelayAsync(int message)
    {
        await DispatcherHelper.ExecuteOnUIThreadAsync(async () =>
        {
            try
            {
                if (MessageList != null && MessageList.Count > 0 )
                {
                    ObjFactory.Instance.CreateLogger().Log("ScrollIntoViewWithDelayAsync Start", GetType().Name, false);

                    await Task.Delay(100);
                    if (message > -1 && message < MessageList.Count)
                    {                           
                        _messageListView?.ScrollIntoView(MessageList[message], ScrollIntoViewAlignment.Leading);
                    }
                    ObjFactory.Instance.CreateLogger().Log("ScrollIntoViewWithDelayAsync End", GetType().Name, false);
                }
            }
            catch (Exception ex)
            {
                ObjFactory.Instance.CreateLogger().Log("EX= " + ex.Message, GetType().Name);
            }
        });
    }
private async Task ScrollIntoViewWithDelayAsync(int消息)
{
等待DispatcherHelper.ExecuteonuThreadAsync(异步()=>
{
尝试
{
if(MessageList!=null&&MessageList.Count>0)
{
ObjFactory.Instance.CreateLogger().Log(“ScrollIntoViewWithDelayAsync启动”,GetType().Name,false);
等待任务。延迟(100);
如果(消息>-1&&message_messageListView?.ScrollIntoView(MessageList[message],ScrollIntoViewAlignment.Leading);
}
ObjFactory.Instance.CreateLogger().Log(“ScrollIntoViewWithDelayAsync End”,GetType().Name,false);
}
}
捕获(例外情况除外)
{
ObjFactory.Instance.CreateLogger().Log(“EX=“+EX.Message,GetType().Name”);
}
});
}

我无法确切地找出这背后的原因。但在大多数情况下,它都被困在这段代码中,因为在日志中,它只打印“ScrollIntoViewWithDelayAsync Start”

Hello,目前似乎没有明确的错误消息。在最好的情况下,您可以在调试模式下跟踪断点,以检查该方法是否正确执行。您还可以尝试直接在UI线程上调用方法中的代码(删除
ExecuteOnUIThreadAsync
并在UI线程上调用该方法)\u messageListView?.ScrollIntoView(MessageList[message],ScrollIntoViewAlignment.Leading);在这一行,应用程序正在崩溃,其中MessageList.Count=124和message=19Hello,如果您找到了特定的问题,您可以查看MessageList[19]的数据结构来分析问题的原因。我无法找到崩溃的具体原因,我可以找到导致崩溃的特定行。MessageList[19]的数据结构没有问题您好,如果您确定问题发生在哪里,可以尝试其他方法进行调试。例如,如前所述,直接在UI线程上调用此方法,或者更改一些测试环境(例如,使用特定的伪数据测试
ScrollIntoView
是否正确执行)。由于无法准确知道错误类型,因此需要根据项目的实际情况进行测试。