今天我想在幾個DataGridView集合中添加一個100列左右的選項。我想我可以手動編輯窗體的Designer.vb文件來複制和粘貼選項,但我很快意識到這不是一件容易的事情,因爲選項包含了列的名稱,所以它不是我可以只是粘貼進來。我可以更改designer.vb中的代碼以使用With/End With?
我選擇更改代碼以使用With/End With,但是這樣做後,我在設計器中遇到了一堆錯誤,表示「變量'VB $ t_ref $ L0'要麼未聲明或從來沒有分配(即從L0到L99)我做了一些研究,並得知這個變量不是我在VB代碼中找到的,但實際上是它的編譯版本。前代碼:
Me.DataMatchesHomePlayerID.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells
Me.DataMatchesHomePlayerID.HeaderText = "Home Player ID"
Me.DataMatchesHomePlayerID.Name = "DataMatchesHomePlayerID"
Me.DataMatchesHomePlayerID.Width = 144
下面的代碼後:
With Me.DataMatchesHomePlayerID
.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells
.HeaderText = "Home Player ID"
.Name = "DataMatchesHomePlayerID"
.Width = 144
End With
我不明白的是爲什麼這沒有奏效。我不應該在Designer.vb中使用With/End With嗎?如果它有幫助,我添加的行是第一個(.AutoSizeMode)。
讓我知道你是否需要額外的信息來幫助我解決這個問題。我真的只需要知道是否可以完成將Designer.vb中的所有代碼轉換爲使用With/End With。
謝謝!
注意文件頂部附近的註釋部分'......不要使用代碼編輯器修改它.'無論您做什麼,IDE都會在您進行更改時重寫文件 – Plutonix
@Plutonix在點上。設計者代碼具有編寫您的編程代碼的自己的語法。它正在創建和閱讀其內容,就像您將爲應用程序編寫和讀取配置文件一樣。您可以編輯designer.vb,但必須使用與設計器相同的語法。 – Luke
另外:有些情況下,由於Visual Studio中的錯誤,您必須編輯designer.vb。例如:如果您在您的資源文件夾中存儲的Picturebox中使用圖像,然後刪除該資源的圖像,設計師將無法加載,因爲它不會刪除圖像。它會完全崩潰你的表單。只有出路:轉到設計器文件並將Picturebox.Image更改爲Nothing,而不是對Ressources Image的引用。 (發生在VS 2013 Ultimate的我) – Luke