VB.NET尝试读取My.Settings中的System.Collections.Specialized.StringCollection时返回InvalidOperationException
在我的vb.net项目中,我使用visual studio中的内置设置管理器创建了以下设置:VB.NET尝试读取My.Settings中的System.Collections.Specialized.StringCollection时返回InvalidOperationException,vb.net,invalidoperationexception,my.settings,stringcollection,Vb.net,Invalidoperationexception,My.settings,Stringcollection,在我的vb.net项目中,我使用visual studio中的内置设置管理器创建了以下设置: appVisible(布尔值) saveFusedFiles(布尔值) 颜色(System.Collections.Specialized.StringCollection) 分隔符(System.Collections.Specialized.StringCollection) 当尝试读取“颜色”或“分隔符”时,我得到一个InvalidOperationException,但读取布尔变量是有效的
- appVisible(布尔值)
- saveFusedFiles(布尔值)
- 颜色(System.Collections.Specialized.StringCollection)
- 分隔符(System.Collections.Specialized.StringCollection)
Public Sub New()
' This call is required by the Windows Form Designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
My.Settings.Reload()
'INIT Separators
If Not ListView_Separators.Items.Count = 0 Then
ListView_Separators.Items.Clear()
End If
If My.Settings.separators.Count = 0 Then
My.Settings.separators.Add(",")
GenerateListViewItem(",")
Else
For Each seperator As String In My.Settings.separators
GenerateListViewItem(seperator)
Next
End If
Button_Add.Enabled = False
Button_Delete.Enabled = False
'INIT Colors
If DataGridView_Colors.Rows.Count > 0 Then
DataGridView_Colors.Rows.Clear() 'Clear DataGridView
End If
For Each color As String In My.Settings.colors 'Add all Colors to DataGridView
'Add to DataGridView
Dim splitedColor As String() = New String(1) {1, 1}
splitedColor = color.Split("_")
Dim contentText As String
Select Case splitedColor(1)
Case 0
contentText = "New component"
Case 1
contentText = "Removed component"
Case 2
contentText = "Changed Data"
End Select
Dim arrDataGridRow As String() = New String(1) {splitedColor(0), contentText}
DataGridView_Colors.Rows.Add(arrDataGridRow)
Dim dgwStyle As New DataGridViewCellStyle
dgwStyle.ForeColor = Drawing.Color.FromName(splitedColor(0))
DataGridView_Colors.Rows(DataGridView_Colors.Rows.Count - 1).Cells(0).Style = dgwStyle
Next
'INIT View
If My.Settings.appVisible = True Then
Checkbox_Visable.Checked = True
Else
Checkbox_Visable.Checked = False
End If
End Sub
My.Settings.separators.Count引发异常
有人知道怎么处理吗 我认为这就是为什么您在配置文件中看不到集合的原因 但对同一个问题的回答似乎是一个更好的解决方案
你能提供一些代码吗?当然,我在问题中添加了构造函数。我在运行时读取My.Settings.separators.count时遇到了InvalidOperationException。我在配置文件中没有看到
颜色或分隔符。