2012-05-03 197 views
1

Bassicly即時創建一個程序,允許用戶輸入值,如果值超過一定數量,然後禁用一個不同的表單上的按鈕。但我不確定如何訪問其按鈕控件。我以爲這會是這樣的? Thanx我想要禁用點擊按鈕

if(value>120) 
{ 
    Form3 form3 = new Form3(); 
    Button.Disable(); 
    this.close(); 
} 
+2

按鈕具有「已禁用」屬性。將其設置爲true。如果你想鼓勵人們來幫助你,你應該接受更多的問題。 –

+6

@JonathanWood你有這個倒退。按鈕具有「啓用」屬性。 – LarsTech

+0

它必須是不同形式的按鈕,對不對?你知道這個名字的形式嗎?我的意思是,你有一個已經指向它的Form3變量嗎? –

回答

3

您的要求是禁用按鈕另一種形式 - 從閱讀,我認爲形式已經存在。通過創建一個新的實例:

Form3 form3 = new Form3(); 

你正在創建的Form3一個新的實例,所以你永遠不會禁用已經可見的窗體上的按鈕。

您必須使當前表單知道實例Form3才能在其中更改任何內容。這裏有一些方法可以使它們進行交互:

  • 存儲這些值在一個單獨的對象,並讓您的形式通過例如
  • 事件的變化作出反應在創建或Show()荷蘭國際集團提供的Form3實例的引用「這種」形式
  • 保持到每個創建的窗體的引用在一個靜態類

還要記住有在同一時間可能會混淆你的最終用戶主動多個相關表格。

0

我想你必須這樣做。

更新

if(value>120) 
{ 
Form3 form3 = new Form3(); 
form3.Button.Enabled = false; 
this.close(); 
} 

更新

+0

我試過這個,但它不會從你的右邊@CAbbott的表格 – Hashey100

+0

中獲取按鈕信息。 –

1

您可以禁用按鈕是這樣的:

otherForm.Button.Enabled = false; 

爲了能夠從其他方面(的形式)來禁用此按鈕,您需要將其申報爲公衆。你可以這樣做如下:

  • 選擇在設計視圖按鈕在屬性窗口
  • 設置修飾符公共

然後你就可以顯示與禁用按鈕的形式,如下所示:

var newForm = new Form3(); 
newForm.Button.Enabled = false; 
newForm.Show(); 
1

您需要參考實例 Form3。您正在創建一個Form3的新實例,這可能不是您想要的。然後,您的Form3需要將您感興趣的按鈕公開爲公共屬性,以便您可以從課外訪問它。那麼你應該可以將Disabled屬性設置爲true。