我创建了一个自定义列表视图控件.每次添加新列时,我都会将其设置为添加新按钮.
当我运行包含我的自定义控件的程序时,列按钮正确放置.但是,在设计时,当我添加或删除列时,控件不会更新添加的按钮.
当我运行包含我的自定义控件的程序时,列按钮正确放置.但是,在设计时,当我添加或删除列时,控件不会更新添加的按钮.
它们在运行时是正常的,但在设计时我需要关闭表单并重新打开它(强制重新绘制)以更新列按钮.
如何以编程方式强制重绘用户控件?
Column属性如下所示:
<MergableProperty(False)> _ <Editor("System.Windows.Forms.Design.ColumnHeaderCollectionEditor,System.Design,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a",GetType(UITypeEditor))> _ <DesignerSerializationVisibility(DesignerSerializationVisibility.Content)> _ <Localizable(True)> _ Public ReadOnly Property Columns() As ListView.ColumnHeaderCollection Get Return ListView1.Columns End Get End Property
我试图像这样重绘控件:
Me.Invalidate() Dim x As New Rectangle With {.X = Me.Location.X,.Y = Me.Location.Y,.Size = Me.Size} Me.NotifyInvalidate(x)