【发布时间】:2019-12-25 07:24:27
【问题描述】:
如何在这段代码中使用FOR 循环?
而是使用大量IF 问题。
我已经尝试了很多方法来使它工作,但没有成功。
我很乐意通过智能循环帮助我解决这个问题。
这适用于计算架子位置和抽屉位置的软件。
我需要你帮我解决这个问题。
我想要这样的东西:
for (int i = 1; i <= NishCount; i++)
{
lblNish + i + .Text = nish + i + .ToString();
}
这是代码:
if (NishCount == 1 && MdfCount == 0)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = "ENTER VALUES";
lblSho.Text = "ENTER VALUES";
lblMDF1.Text = "ENTER VALUES";
lblMDF2.Text = "ENTER VALUES";
}
if (NishCount == 2 && MdfCount == 0)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = nish2.ToString();
lblSho.Text = "ENTER VALUES";
lblMDF1.Text = "ENTER VALUES";
lblMDF2.Text = "ENTER VALUES";
}
if (NishCount == 1 && MdfCount == 1)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = "ENTER VALUES";
lblSho.Text = "ENTER VALUES";
lblMDF1.Text = MDF1.ToString();
lblMDF2.Text = "ENTER VALUES";
}
if (NishCount == 2 && MdfCount == 1)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = nish2.ToString();
lblSho.Text = "ENTER VALUES";
lblMDF1.Text = MDF1.ToString();
lblMDF2.Text = "ENTER VALUES";
}
if (NishCount == 1 && MdfCount == 2)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = "ENTER VALUES";
lblSho.Text = "ENTER VALUES";
lblMDF1.Text = MDF1.ToString();
lblMDF2.Text = MDF2.ToString();
}
if (NishCount == 2 && MdfCount == 2)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = nish2.ToString();
lblSho.Text = "ENTER VALUES";
lblMDF1.Text = MDF1.ToString();
lblMDF2.Text = MDF2.ToString();
}
if (NishCount == 1 && MdfCount == 0 && SNCheckBox.Checked == true)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = "ENTER VALUES";
lblSho.Text = shocev.ToString();
lblMDF1.Text = "ENTER VALUES";
lblMDF2.Text = "ENTER VALUES";
}
if (NishCount == 2 && MdfCount == 0 && SNCheckBox.Checked == true)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = nish2.ToString();
lblSho.Text = shocev.ToString();
lblMDF1.Text = "ENTER VALUES";
lblMDF2.Text = "ENTER VALUES";
}
if (NishCount == 1 && MdfCount == 1 && SNCheckBox.Checked == true)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = "ENTER VALUES";
lblSho.Text = shocev.ToString();
lblMDF1.Text = MDF1.ToString();
lblMDF2.Text = "ENTER VALUES";
}
if (NishCount == 2 && MdfCount == 1 && SNCheckBox.Checked == true)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = nish2.ToString();
lblSho.Text = shocev.ToString();
lblMDF1.Text = MDF1.ToString();
lblMDF2.Text = "ENTER VALUES";
}
if (NishCount == 1 && MdfCount == 2 && SNCheckBox.Checked == true)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = lblSho.ToString();
lblSho.Text = "ENTER VALUES";
lblMDF1.Text = MDF1.ToString();
lblMDF2.Text = MDF2.ToString();
}
if (NishCount == 2 && MdfCount == 2 && SNCheckBox.Checked == true)
{
lblNish1.Text = nish1.ToString();
lblNish2.Text = nish2.ToString();
lblSho.Text = shocev.ToString();
lblMDF1.Text = MDF1.ToString();
lblMDF2.Text = MDF2.ToString();
}
【问题讨论】:
-
你需要在这里使用 switch case... For 循环在这里没有用。
-
怎么办?你能写代码吗?
-
你能不能把字符串文字改成英文,这样我们就可以更容易地看出哪些是相同的,哪些是不同的? (最好是变量名)你可以edit你的问题。
-
请阅读docs.microsoft.com/en-us/dotnet/csharp/language-reference/… 了解 C# 中的 switch case。尝试在您的代码中使用它并在此处提问您是否遇到任何问题。
-
@Sweeper 我把它改成英文了。