Inheritance works for first descendant but not next. Why?
**Form1**

    Public Class Form1

    Private Sub But_Bell_Click(sender As System.Object, e As System.EventArgs) Handles But_Bell.Click
        MessageBox.Show("Ding a ling")
    End Sub
End Class



**First Decendant**

    Public Class BellsAndWhistles
    Inherits Form1
    Friend WithEvents But_Whistle As System.Windows.Forms.Button

    Private Sub InitializeComponent()
        Me.But_Whistle = New System.Windows.Forms.Button()
        Me.SuspendLayout()
        '
        'But_Whistle
        '
        Me.But_Whistle.Location = New System.Drawing.Point(112, 38)
        Me.But_Whistle.Name = "But_Whistle"
        Me.But_Whistle.Size = New System.Drawing.Size(75, 23)
        Me.But_Whistle.TabIndex = 1
        Me.But_Whistle.Text = "Whistle"
        Me.But_Whistle.UseVisualStyleBackColor = True
        '
        'BellsAndWhistles
        '
        Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
        Me.ClientSize = New System.Drawing.Size(292, 273)
        Me.Controls.Add(Me.But_Whistle)
        Me.Name = "BellsAndWhistles"
        Me.Text = "Bells & Whistles"
        Me.Controls.SetChildIndex(Me.But_Whistle, 0)
        Me.ResumeLayout(False)

    End Sub

    Private Sub But_Whistle_Click(sender As System.Object, e As System.EventArgs) Handles But_Whistle.Click
        MessageBox.Show("Toot Toot")
    End Sub
End Class




![First Decendent Designer][1]


**Second Descendant**

    Public Class MoreBellsAndWhistles
    Inherits BellsAndWhistles
    Friend WithEvents MoreBells As System.Windows.Forms.Button

    Private Sub InitializeComponent()
        Me.MoreBells = New System.Windows.Forms.Button()
        Me.SuspendLayout()
        '
        'MoreBells
        '
        Me.MoreBells.Location = New System.Drawing.Point(30, 145)
        Me.MoreBells.Name = "MoreBells"
        Me.MoreBells.Size = New System.Drawing.Size(75, 23)
        Me.MoreBells.TabIndex = 1
        Me.MoreBells.Text = "More Bells"
        Me.MoreBells.UseVisualStyleBackColor = True
        '
        'MoreBellsAndWhistles
        '
        Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
        Me.ClientSize = New System.Drawing.Size(292, 273)
        Me.Controls.Add(Me.MoreBells)
        Me.Name = "MoreBellsAndWhistles"
        Me.Text = "MoreBellsAndWhistles"
        Me.Controls.SetChildIndex(Me.MoreBells, 0)
        Me.ResumeLayout(False)

    End Sub

    Private Sub MoreBells_Click(sender As System.Object, e As System.EventArgs) Handles MoreBells.Click
        MessageBox.Show("Ting TIng")
    End Sub

    Private Sub MoreBellsAndWhistles_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load

    End Sub
End Class

![Second Descendant Designer][2]


Where has the whistle button gone? 

The class part of the inheritance has works because you can access it via code.


  [1]: http://i.stack.imgur.com/JZ9qU.jpg
  [2]: http://i.stack.imgur.com/CpgKg.jpg
Inheritance works for first descendant but not next. Why?
===

**Form1**

    Public Class Form1

    Private Sub But_Bell_Click(sender As System.Object, e As System.EventArgs) Handles But_Bell.Click
        MessageBox.Show("Ding a ling")
    End Sub
End Class



**First Decendant**

    Public Class BellsAndWhistles
    Inherits Form1
    Friend WithEvents But_Whistle As System.Windows.Forms.Button

    Private Sub InitializeComponent()
        Me.But_Whistle = New System.Windows.Forms.Button()
        Me.SuspendLayout()
        '
        'But_Whistle
        '
        Me.But_Whistle.Location = New System.Drawing.Point(112, 38)
        Me.But_Whistle.Name = "But_Whistle"
        Me.But_Whistle.Size = New System.Drawing.Size(75, 23)
        Me.But_Whistle.TabIndex = 1
        Me.But_Whistle.Text = "Whistle"
        Me.But_Whistle.UseVisualStyleBackColor = True
        '
        'BellsAndWhistles
        '
        Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
        Me.ClientSize = New System.Drawing.Size(292, 273)
        Me.Controls.Add(Me.But_Whistle)
        Me.Name = "BellsAndWhistles"
        Me.Text = "Bells & Whistles"
        Me.Controls.SetChildIndex(Me.But_Whistle, 0)
        Me.ResumeLayout(False)

    End Sub

    Private Sub But_Whistle_Click(sender As System.Object, e As System.EventArgs) Handles But_Whistle.Click
        MessageBox.Show("Toot Toot")
    End Sub
End Class




![First Decendent Designer][1]


**Second Descendant**

    Public Class MoreBellsAndWhistles
    Inherits BellsAndWhistles
    Friend WithEvents MoreBells As System.Windows.Forms.Button

    Private Sub InitializeComponent()
        Me.MoreBells = New System.Windows.Forms.Button()
        Me.SuspendLayout()
        '
        'MoreBells
        '
        Me.MoreBells.Location = New System.Drawing.Point(30, 145)
        Me.MoreBells.Name = "MoreBells"
        Me.MoreBells.Size = New System.Drawing.Size(75, 23)
        Me.MoreBells.TabIndex = 1
        Me.MoreBells.Text = "More Bells"
        Me.MoreBells.UseVisualStyleBackColor = True
        '
        'MoreBellsAndWhistles
        '
        Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
        Me.ClientSize = New System.Drawing.Size(292, 273)
        Me.Controls.Add(Me.MoreBells)
        Me.Name = "MoreBellsAndWhistles"
        Me.Text = "MoreBellsAndWhistles"
        Me.Controls.SetChildIndex(Me.MoreBells, 0)
        Me.ResumeLayout(False)

    End Sub

    Private Sub MoreBells_Click(sender As System.Object, e As System.EventArgs) Handles MoreBells.Click
        MessageBox.Show("Ting TIng")
    End Sub

    Private Sub MoreBellsAndWhistles_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load

    End Sub
End Class

![Second Descendant Designer][2]


Where has the whistle button gone? 

The class part of the inheritance has works because you can access it via code.


  [1]: http://i.stack.imgur.com/JZ9qU.jpg
  [2]: http://i.stack.imgur.com/CpgKg.jpg