具有问题,我有一个非常简单的if
语句设置了几个变量,每次经过的陈述时间。我有一个问题,当它到达AgentsAvailable == 0
或打else
声明不能恢复到任何先前的陈述。有人可以通过某种方式提供一些帮助,以使语句在每次声明为真时都能正常循环,并且不会卡住。打破了我的if语句
我if
声明:
if (e.CmsData.Skill.AgentsAvailable > 0)
{
Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action)(() => {
callsWaitingData.Text = e.CmsData.Skill.AgentsAvailable.ToString();
callsWaitingData.Foreground = new SolidColorBrush(Colors.Green);
callsWaitingText.Text = "Available";
longestWaitingData.Text = max.ToString();
longestWaitingText.Text = "Available";
callimgae.Source = new BitmapImage(new Uri("pack://application:,,,/ScoreBoardClientTest;component/images/circle_green.png", UriKind.Absolute));
}));
}
else if (e.CmsData.Skill.InQueueInRing > 5)
{
Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action)(() => {
callsWaitingData.Text = e.CmsData.Skill.InQueueInRing.ToString();
callsWaitingData.Foreground = new SolidColorBrush(Colors.Red);
callsWaitingText.Text = "Waiting";
longestWaitingData.Text = e.CmsData.Skill.OldestCall.ToString().Substring(3);
longestWaitingText.Text = "Waiting";
timer = new System.Threading.Timer(OnTimerEllapsed, new object(), 0, 2000);
}));
}
else if (e.CmsData.Skill.InQueueInRing > 0)
{
Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action)(() => {
callsWaitingData.Text = e.CmsData.Skill.InQueueInRing.ToString();
callsWaitingData.Foreground = new SolidColorBrush(Colors.Red);
callsWaitingText.Text = "Waiting";
longestWaitingData.Text = e.CmsData.Skill.OldestCall.ToString().Substring(3);
longestWaitingText.Text = "Waiting";
callimgae.Source = new BitmapImage(new Uri("pack://application:,,,/ScoreBoardClientTest;component/images/circle_red.png", UriKind.Absolute));
}));
}
else if (e.CmsData.Skill.AgentsAvailable == 0)
{
Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action) (() =>
{
callsWaitingData.Text = e.CmsData.Skill.AgentsAvailable.ToString();
callsWaitingData.Foreground = new SolidColorBrush(Colors.Yellow);
callsWaitingText.Text = "Available";
longestWaitingData.Text = max.ToString();
longestWaitingText.Text = "Available";
callimgae.Source =
new BitmapImage(
new Uri("pack://application:,,,/ScoreBoardClientTest;component/images/circle_yellow.png",
UriKind.Absolute));
}));
}
else
{
Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action) (() =>
{
callsWaitingData.Text = e.CmsData.Skill.AgentsAvailable.ToString();
callsWaitingData.Foreground = new SolidColorBrush(Colors.Yellow);
callsWaitingText.Text = "Available";
longestWaitingData.Text = max.ToString();
longestWaitingText.Text = "Available";
callimgae.Source =
new BitmapImage(
new Uri("pack://application:,,,/ScoreBoardClientTest;component/images/circle_yellow.png",
UriKind.Absolute));
}));
}
是什么_revert回到前面任何statements_的是什么意思? –
这是循环吗?我看不出它如何能“每一次的发言有一个为真循环正常” – Nived
也许OP正在寻找['break'(https://msdn.microsoft.com/en-us/library/adbctzc4。 ASPX),但问题远未明朗... – Pikoh