Я думаю, ваш метод CompareStrings () должен выглядеть примерно так:
private bool _Comparing = false;
private string _URL = "http://xcastradio.com/stats/nowplaying.txt";
private string _data = "";
public void CompareStrings()
{
Timer timer = new Timer();
timer.Interval = 1000;
timer.Tick += timer_Tick;
_data = GetData(_URL);
_Comparing = true;
timer.Start();
}
void timer_Tick(object sender, EventArgs e)
{
if (_Comparing)
{
string newdata = GetData(_URL);
if (newdata != _data)
{
NowPlaying np = new NowPlaying();
NowPlayingInfo1.Text = newdata;
_data = newdata;
np.Show(this);
}
}
else
{
Timer timer = (Timer)sender;
timer.Stop();
}
}
Этот код использует Timer
для проверки URL один раз в секунду. Всякий раз, когда содержимое этого текстового файла изменяется, этот код будет всплывать в новом окне NowPlaying
(что, я думаю, вы пытаетесь сделать), и будет продолжать это делать, пока вы не установите _Comparing
в false
.
Возможно, вы также захотите опрашивать URL реже, чем раз в секунду, и в этом случае вы должны установить timer.Interval
примерно на 10000 (10 секунд).