2010-07-08 62 views
3

我一直在嘗試使用按鈕來擴展表單的大小。但是,由於某種原因,它不會讓我這樣做。我認爲這將是一件容易的事情,但我得到錯誤:Visual C#:調整表單大小

「對象引用是非靜態字段,方法或屬性'System.Windows.Forms.Control.Width不用彷徨」

我正在使用的代碼導致該錯誤是

private void options_Click(object sender, EventArgs e) 
    { 
     FileSortForm.Height = 470; 
    } 

FileSortForm是我的表的名稱。另外,從其他網站的建議,我加入這個代碼到窗體的Load代碼

this.Size = new System.Drawing.Size(693, 603); 
+0

你以前用VB編程過嗎?這是相關的。 – 2010-07-08 19:51:35

回答

6

您需要更改表單的特定實例的高度。最有可能在你的情況this將要修改的實例:

private void options_Click(object sender, EventArgs e) 
{ 
    this.Height = 470; 
} 
+0

哦。那不一樣。 那麼這個「這個」是如何工作的?我認爲它只是意味着代碼的任何對象...... – muttley91 2010-07-08 19:20:46

+0

「this」是類的當前實例cf .: http://msdn.microsoft.com/en-us/library/dk1507sz(VS.80)的.aspx – tobsen 2010-07-08 19:59:14

2

看來FileSortForm是你,不是你的形式實例的名稱。如果是這種情況,您可以簡單地寫

private void options_Click(object sender, EventArgs e) 
{ 
    this.Height = 470; // "this" is your form instance. 
} 
1

您試圖訪問不存在的靜態屬性。您需要引用存在的非靜態方法。

如果options_Click方法位於FileSortForm內部。

this.Height = 470; 

如果options_Click方法在FileSortForm之外,則必須使用該引用。喜歡的東西:

subForm.Height = 470 

編輯:

裏面包含類的「這個」資格的是不必要的(除非你調用一個重寫的方法)。