C#winform中如何让label的文字一只在制定的panel中无限首尾相接的滚动?

现在有个winform程序,想实现在底部制定的panel中实现无限滚动,用了定时器,想让在panel左边未滚动完,panel的右边就出现滚动的字样,实现这样无限滚动。目前的写法好僵硬啊
lblScrollMsg.Left -= 2;//设置label1左边缘与其容器的工作区左边缘之间的距离
if (lblScrollMsg.Right < 0 )//当label1右边缘与其容器的工作区左边缘之间的距离小于0时
{
lblScrollMsg.Left = this.Width;//设置label1左边缘与其容器的工作区左边缘之间的距离为该窗体的宽度
}

http://blog.csdn.net/haoxiang110/article/details/40381043