當我嘗試爲textBox的屬性BackColor設置值時出現此錯誤
我所擁有的是一個formBuilder。
所以用我的formBuilder Runninng我可以創建一個表單添加一個TabControl,並在tabControl一個groupBox。在GroubBox裏面我有一些文本框。
對於每個TextBox,我將它們的屬性(包含值)保存在xml中。
當我試圖重新從XML形式(在另一個項目),我使用該代碼:異常已被調用的目標拋出 - 對於屬性BackColor
For Each cntProperty As XElement In elem.Elements
Dim propertyName As String = cntProperty.Name.ToString
Dim targetProperty As PropertyInfo = parentControl.GetType().GetProperty(propertyName)
If targetProperty IsNot Nothing Then
Dim propType As Type = FindType(targetProperty.PropertyType.ToString)
Dim convertedVal = ConvertValue(cntProperty.Value, targetProperty.PropertyType)
parentControl.GetType().GetProperty(propertyName).SetValue(parentControl, convertedVal, Nothing)'Here I get the exception
End If
Next
parentControl的是,我試圖重新(在這種情況下的textBox) FindType是控制返回屬性的類型功能(正常工作) ConvertValue是字符串從XML轉換爲適當的類型 對於顏色的功能我用這個函數:
Color.FromName(val)'val is the string value from the xml
所以對一些文本框我有作爲字符串值:顏色[白色]
和轉換後,我有一個顏色:「{名稱=顏色[白色],ARGB =(0,0,0,0)}」
當我試圖將此顏色值設置爲屬性BackColor我得到異常:
異常已被調用的目標引發。
和的InnerException: 控制不支持透明背景顏色
任何想法解決這個問題?