StatusStrip裏的text元件無法更新

一般在C#中要更新某個TextBox或Label,只要將它的Text屬性設定成新的值就可以即時在畫面上看到最新的資料。

但今天使用到了一個StatusStrip裏的ToolStripStatusLabel元件,想要即時更新它的內容值時,同樣是指定了它的Text屬性,但並沒有即時更新。

查了一下網路上的解法,好多人都是說要用

this.Refresh();

是可以這樣啦,只是這樣是叫整個Form本身去更新,更新的範圍會不會太大了。如果呼叫的頻率太高的話,我想效能上應該會有所影響。

後來想說去找一下ToolStripStatusLabel元件本身是否有Refresh()函式可以呼叫。結果是沒有。難怪大家都沒辦法,只好對整個Form來下手。

順手看了一下,那StatusStrip本身有沒有Refresh()呢,沒想到還真的有耶,那就叫StatusStrip去更新就好啦,不用叫到整個Form去更新。

問題就解決囉。

留言

這個網誌中的熱門文章

DOS Batch指令檔中如何記錄log資訊

用捷徑方式執行需帶入命令列參數的Windows Form程式

使用regular expression來match中括號(square bracket)