window恢复后(最小化后)不显示ToolStripStatusLabel

ToolStripStatusLabel is not displayed after the window be restored(after minimize)

我有一个简单的 StatusStrip,里面有一个 ToolStripStatusLabel。标签中的文字可能会很长,所以我更喜欢将其剪切显示。
我设置了 ToolStripStatusLabel 属性:Spring=trueTextAlign=MiddleLeft。我不想设置 StatusStrip 的 属性 LayoutStyle = ToolStripLayoutStyle.Flow,因为使用 ToolStripLayoutStyle.Flow 文本将被三角形覆盖(用于调整大小)。

文本 属性 直接设置在 InitializeComonents() 之后并按预期显示 - 剪切。
如果我最小化(到任务栏)然后恢复 window,文本将根本不会显示。如果我将 window 加宽,我可以看到文本,如果我将 window 调整为初始大小,我仍然可以看到文本,按预期剪切。

我有并且会post我的解决方案,但我想问你,你有没有优雅的解决方案?

我找到的解决方案非常简单。只需处理 window 的恢复事件(没有此类事件,但有一个解决方法: Is there an event raised in C# when a window is restored?) 并重置 ToolStripStatusLabel 中的文本:

var txt = tslabel.Text;
tslabel.Text = " ";
tslabel.Text = txt;