MessageBox.ShowDialog 没有返回值

huangdancs huangdancs 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
请教一个问题,下面的程序是实现一个Retry和Skip逻辑的代码块。

现在, string response = msgBox.ShowDialog(Context.UIViewName);在do循环里第一次执行的时候可以得到值,但之后就无法得到值(一直没有反应)。是什么原因?怎么解决呢?


do
{
try
{
returnData = XXX; // 一个业务函数

if (!returnData)
{
throw new Exception(string.Format("XXX");
}


Logger.Info("Done executing activity " + ActivityName);
}
catch (Exception e)
{
if (promptRetryOnFailure)
{
// promptRetryOnFailure == true, retrunData == false

string errorMessage = string.Format("XXX“);
var msgBox = new MessageBox("XXX", errorMessage, MessageBoxIcons.Question, MessageBoxButtons.RetryCancel);
msgBox.RemoveButton("Cancel");
msgBox.AddButton("Skip");

string response = msgBox.ShowDialog(Context.UIViewName);
if (response == DialogResult.Retry)
{
//choose "retry", retry the transaction
retry = true;
}
}
else
{
// promptRetryOnFailure == false

Logger.Info("XXXXX" + ActivityName);
}
}
} while (retry);
}
}
...全文

相关推荐

评论 4
收藏 已收藏
分享
返回顶部
huangdancs
C# 111,128 成员 642,536 内容