如何在循环中只显示一次消息框

时间:2011-09-25 04:20:10

标签: c# loops while-loop

我是C的新人,

我正在使用messagebox来显示该行。但是它处于一个循环中,所以消息框显示的次数我想只显示一次,并且下次不应显示消息框。

try{
    using (var sr = File.OpenText("test.txt")){
        string newone = 20110501;//date
        string line;
        while ((line = sr.ReadLine()) != null){
            if (three => one){
                MessageBox.Show("Buy : " + line);
                //Its Displaying more than 50 times i want to displayit only
                //onetime and should dispose for the next Time
            }
        }
    }
} catch { }

提前致谢。

3 个答案:

答案 0 :(得分:5)

使用它:

try {
    using (var sr = File.OpenText("test.txt")) {
        bool flag = true;
        string newone = 20110501;//date
        string line;
        while ((line = sr.ReadLine()) != null) {
            if (flag) {
                MessageBox.Show("Buy : " + line);
                //Its Displaying more than 50 times i want to displayit only
                //onetime and should dispose for the next Time
            }
            flag = false;
        }
    }
} catch { }

答案 1 :(得分:4)

Simple有一个布尔标志,说明消息框是否已经显示,并使用它来保护该动作。

<强>更新

bool shown = false;
...
if( !shown )
{
     MessageBox.Show("Buy : " + line);
     shown = true;
}

答案 2 :(得分:2)

您正在尝试从循环中break;