タイマーとリストのヘルプが必要です。タイマーとリスト<string> in C#
リストは、一度に5または6と言う文字列のコレクションで構成されます。今、私はlabel1上に文字列1を表示する必要があり、それは5秒待ってからlabel1に文字列2を表示する必要があります。私はタイマーコントロールを持っており、timer_tickイベントで自分のコードを指定しています。
private void timer1_Tick(object sender, EventArgs e)
{
string[] myStatus = myStatusCollection.ToArray();
int length = myStatus.Length;
for (int i = 0; i < length; i++)
{
string _myStatus = myStatus[i];
//label1.ResetText();
MessageBox.Show("Twitter Status =" + _myStatus);
//label1.Text = _myStatus;
//label1.Visible = true;
}
}
Elapse = trueおよびinterval = 5000と指定しましたが、一度に1つの文字列を表示できません。実際、私は最後の文字列だけを取得しています。私はいつも弦を回転させたい。
誰でも助けてくれますか?
メッセージボックスには、ループ内でテストSystem.Diagnostics.Debug.WriteLineとメッセージボックスを交換し、これは、UIをブロックしたりするために待機しません、結果を確認するためのVisual Studioの[出力]ウィンドウをチェックする奇妙な方法でありますユーザ入力。このように見えるのはどうですか? –
はいメッセージボックスは、このような場合には有用ではありません。ユーザから何らかのアクションが得られるまでプログラムフローを停止します。 label1.Text = _myStatus;これはスレッドとスリープ5秒ごとのループとしてこのメソッドを使用して終了することができますそれを行います。もしあなたがbrandoneの答えのようなタイマーを使いたいのなら、それぞれのティックは別々のループ(考えられる)を使用するインデックスで、最後にタイマーを止めることを忘れないでください> – ahmedsafan86