2011-06-06 64 views
0

我試圖在滿足某些條件時將按鈕設置爲啓用狀態,但是當我將其設置爲true時它似乎沒有注意。當我通過代碼進行調試並在Enabled變量上添加監視時,它會更改爲true,但當它在設置爲true後將鼠標懸停在變量上時,它仍然表示它爲false。需要啓用該按鈕時,該按鈕保持禁用狀態。有沒有其他人遇到過這個問題?.NET窗體忽略button.Enabled標誌

這裏是我有問題的代碼:

if (!thisCondition){ 
    this.btnOK.Enabled = true; 
} 

有真的沒有更給它...看來愚蠢的,我知道。

+0

你有你的代碼或部分? – 2011-06-06 17:47:28

+1

「Enabled = False」是否是任何容器控件的按鈕? – 2011-06-06 17:49:59

+0

如果你想看到代碼,那麼我會張貼它。 – 2011-06-06 17:54:14

回答

0

我發現這個問題,有一個函數,調試器正在跨越,我沒有注意到這是任意設置值。得愛不可讀的代碼!

+0

這是Visual Studio跨過的屬性嗎? http://stackoverflow.com/questions/4873225/visual-studio-2010-step-into-property-functionf11-doesnt-work-as-expected/4873299#4873299 – 2011-06-06 20:02:06

+0

不,這是一個功能,非常複雜,很難閱讀,並在我的挫折中,我吹了過去。 – 2011-06-06 22:44:50

1

如果您有一個啓用的控件,但它位於禁用的父控件中,它將保持禁用狀態。

+0

這絕對不是在禁用的父控件內,取消按鈕工作正常,它們在同一個容器內。 – 2011-06-06 17:57:58

+0

然後嘗試掛鉤按鈕的EnabledChanged事件以查看它何時被設置回False。 – 2011-06-06 18:02:49

0

你有任何mouseevent? 你處於或正處於狀態? 其他條件是否存在?

+0

它在一個循環內,但是如果我一行一行地循環循環,則會發生同樣的事情。它擊中「this.OKBtn.Enabled = true;」代碼,它只是...不會切換...我還在方法的末尾放置了一個「Application.DoEvents()」調用來強制它繪製,但仍然沒有任何結果。 – 2011-06-06 17:59:55