所以我有一个属性Column Widths,我用它来存储列索引和列宽,所以当我重新加载我的表单时,我的列宽度仍然存在(刷新功能),该部分工作100%。
''' <summary>
''' Stores the widths of the columns on the form.
''' </summary>
''' <returns></returns>
Public Property ColumnWidths As Dictionary(Of Integer, Integer)
Get
Return _columnWidths
End Get
Set(ByVal value As Dictionary(Of Integer, Integer))
_columnWidths = value
End Set
End Property
但是当我更改显示的列时(当我在我的选项表单上时),我想要清除该属性。这就是问题所在。
Form1.ColumnWidths = Nothing
我尝试过使用公共变量,但这也不起作用。有趣的是,我已经在我的整个解决方案中使用了属性等,并且所有这些都是100%工作但是这只是磨削我的齿轮,因为当我从我的选项表单设置它时它没有保留值。
我甚至在Form1上有一个没有Get Set部件的属性,当我从选项表单设置它时工作正常。然而,这个属性不想被设置。
两个表单都在同一个命名空间内,它确实触发了属性的set部分,但_columnWidths值保持不变。它仍然有我添加到集合中的行。
答案 0 :(得分:0)
将属性更改为“共享”允许“选项”表单在表单上访问Form1类。
''' <summary>
''' Stores the widths of the columns on the form.
''' </summary>
''' <returns></returns>
Public Shared Property ColumnWidths As Dictionary(Of Integer, Integer)
Get
Return _columnWidths
End Get
Set(ByVal value As Dictionary(Of Integer, Integer))
_columnWidths = value
End Set
End Property