Преобразование кода C'# в VB.NET
Привет
Я пытаюсь преобразовать приведенный ниже код C# в VB.net через конверт кода, но с ошибкой на одной строке, которую я не могу разрешить
(ссылка на код c# : Изменение цвета границы группового поля[^] )
С#
parent.Paint += new PaintEventHandler( OnParentPaint );
vb код:- (также смотрите в том, что я пробовал для vb.net код)
parent.Paint += New PaintEventHandler(AddressOf OnParentPaint)
подчеркивает красным цветом ниже текста и выдает ошибку
Родитель.Краска
Error: 'Public Event Paint As PaintEventHandler' is an event, and cannot be called directly. Use a 'RaiseEvent' statement to raise an event.
Код C#
/// <summary> /// Parent Changed Event /// </summary> /// <param name="e">event arguments</param> protected override void OnParentChanged( EventArgs e ) { base.OnParentChanged( e ); Control parent = this.Parent; while ( null != parent ) { if ( null != parent ) { parent.Paint += new PaintEventHandler( OnParentPaint ); } parent = parent.Parent; } } /// <summary> /// Parent Paint Event /// </summary> /// <param name="sender">sender object</param> /// <param name="e">event arguments</param> private void OnParentPaint( object sender, PaintEventArgs e ) { this.Refresh(); }
Что я уже пробовал:
VB.NET код
Protected Overrides Sub OnParentChanged(ByVal e As EventArgs) MyBase.OnParentChanged(e) Dim parent As Control = Me.Parent While parent IsNot Nothing If parent IsNot Nothing Then parent.Paint += New PaintEventHandler(AddressOf OnParentPaint) End If parent = parent.Parent End While End Sub
Richard MacCutchan
Вам нужно изменить свой код в соответствии с указаниями в сообщении об ошибке.