View Full Version : سوال: چطور می شه یک رویداد رو توی قسمت component نویسی در VB.NET حذف کرد
  
ms_vb1987
یک شنبه 16 مرداد 1390, 01:36 صبح
سلام
کسی می دونه چطور می شه یک رویداد رو توی قسمت component نویسی حذف کرد
من می خواستم یک Component بسازم که از usercontrol ارث می بره بعضی از رویدادهاش بدردم نمیخوره مثل رویداد load چطور میتونم حذفش کنم؟ کاری کنم که جز رویدادهای شی ای که ساختم نباشه؟
Mani_rf
یک شنبه 16 مرداد 1390, 10:55 صبح
سلام. تو UserControl اون پروپرتی که می خوای نباشه رو Override می کنی، بعد با استفاده از خاصیت Browsable اون را  حذف می کنید. به این شکل : 
 
    <System.ComponentModel.Browsable(False)>
    Public Overrides Property AutoScroll As Boolean
        Get
            Return MyBase.AutoScroll
        End Get
        Set(ByVal value As Boolean)
            MyBase.AutoScroll = value
        End Set
    End Property
    <System.ComponentModel.Browsable(False)>
    Public Overrides Property AutoSize As Boolean
        Get
            Return MyBase.AutoSize
        End Get
        Set(ByVal value As Boolean)
            MyBase.AutoSize = value
        End Set
    End Property
    <System.ComponentModel.Browsable(False)>
    Public Overrides Property BackColor As System.Drawing.Color
        Get
            Return MyBase.BackColor
        End Get
        Set(ByVal value As System.Drawing.Color)
            MyBase.BackColor = value
        End Set
    End Property
ms_vb1987
یک شنبه 16 مرداد 1390, 11:44 صبح
ممنون از جواب خوبت
ولی من می خواهم Event ها رو حذف کنم.
Mani_rf
یک شنبه 16 مرداد 1390, 11:52 صبح
:متفکر: خب Event رو هم میشه Overide کرد
ms_vb1987
یک شنبه 16 مرداد 1390, 11:56 صبح
چطور؟
هرکار میکنم نمیشه:گریه:
ایراد میگیره:افسرده:
Mani_rf
یک شنبه 16 مرداد 1390, 12:06 عصر
ببخشید، من اون اول سوالت را درست نخوندم. اینطوری باید جواب بده : 
    <System.ComponentModel.Browsable(False)>
    Protected Overrides Sub OnAutoSizeChanged(ByVal e As System.EventArgs)
        MyBase.OnAutoSizeChanged(e)
    End Sub
ms_vb1987
یک شنبه 16 مرداد 1390, 13:33 عصر
من این کد رو برای رویداد Load اینطوری نوشتم:
   
 <System.ComponentModel.Browsable(False)>
    Protected Overrides Sub load(ByVal sender As System.Object, ByVal e As System.EventArgs)
        MyBase.OnLoad(e)
    End Sub
این ایراد رو میگیره:
Error	2	sub 'load' cannot be declared 'Overrides' because it does not override a sub in a base class.
اونو به کد زیر هم تغییر دادم:
    Protected Overrides Sub onload(ByVal sender As System.Object, ByVal e As System.EventArgs)
        MyBase.OnLoad(e)
    End Sub
بازهم همون ایراد رو میگیره
ممنون از راهنماییات:لبخندساده:
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.