Sorry, I lost the New sub when I copied.
Works Ok with it.
" active" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
>I tried to use a datasource with a combobox and it didn't work completely
>so I build a small test that was much more straight forward then the app.
>
> The test was to see if the combobox dropdown list displayed the correct
> data.
>
> However, although the designer shows the combobox the combobox does not
> show at runtime.
>
> If you would be so kind as to cut the code below and paste it into a form
> maybe you can easily see why the combobox does not display.
>
>
>
> Thanks
>
>
>
>
>
>
>
> Public Class Form1
>
> Inherits System.Windows.Forms.Form
>
> 'Form overrides dispose to clean up the component list.
>
> <System.Diagnostics.DebuggerNonUserCode()> _
>
> Protected Overrides Sub Dispose(ByVal disposing As Boolean)
>
> If disposing AndAlso components IsNot Nothing Then
>
> components.Dispose()
>
> End If
>
> MyBase.Dispose(disposing)
>
> End Sub
>
> Friend WithEvents ComboBox1 As
> WindowsApplication1.StringWithIntegerComboBox
>
> 'Required by the Windows Form Designer
>
> Private components As System.ComponentModel.IContainer
>
> 'NOTE: The following procedure is required by the Windows Form Designer
>
> 'It can be modified using the Windows Form Designer.
>
> 'Do not modify it using the code editor.
>
> Private Sub InitializeComponent()
>
> Me.ComboBox1 = New WindowsApplication1.StringWithIntegerComboBox
>
> Me.SuspendLayout()
>
> '
>
> 'ComboBox1
>
> '
>
> Me.ComboBox1.Location = New System.Drawing.Point(136, 139)
>
> Me.ComboBox1.Name = "ComboBox1"
>
> Me.ComboBox1.Size = New System.Drawing.Size(235, 21)
>
> Me.ComboBox1.TabIndex = 0
>
> '
>
> 'Form1
>
> '
>
> Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
>
> Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
>
> Me.ClientSize = New System.Drawing.Size(572, 341)
>
> Me.Controls.Add(Me.ComboBox1)
>
> Me.Name = "Form1"
>
> Me.Text = "Form1"
>
> Me.ResumeLayout(False)
>
> End Sub
>
> End Class
>
> Public Class StringWithIntegerComboBox
>
> Inherits System.Windows.Forms.ComboBox
>
> Public Sub New()
>
> MyBase.New()
>
> Me.DataSource = myList
>
> Me.DisplayMember = "Str"
>
> Me.ValueMember = "Value"
>
> myList.Add(New StringWithInteger("One", 1))
>
> myList.Add(New StringWithInteger("Two", 2))
>
> myList.Add(New StringWithInteger("Three", 3))
>
> End Sub
>
> Public myList As List(Of StringWithInteger) = New List(Of
> StringWithInteger)
>
> End Class
>
> Public Class StringWithInteger
>
> Private mInteger As Integer
>
> Private mString As String
>
> Private mToStringDisplaysInteger As Boolean = False
>
> Public Sub New(ByVal str As String, ByVal value As Integer)
>
> mString = str
>
> mInteger = value
>
> End Sub
>
> Public Function Clone() As StringWithInteger
>
> Clone = New StringWithInteger(mString, mInteger)
>
> End Function
>
> Public Overrides Function ToString() As String
>
> If mToStringDisplaysInteger Then
>
> ToString = CStr(mInteger)
>
> Else
>
> ToString = mString
>
> End If
>
> End Function
>
> Public Property Str() As String
>
> Get
>
> Str = mString
>
> End Get
>
> Set(ByVal text As String)
>
> mString = text
>
> End Set
>
> End Property
>
> Public Property ToStringDisplaysSingle() As Boolean
>
> Get
>
> ToStringDisplaysSingle = mToStringDisplaysInteger
>
> End Get
>
> Set(ByVal displayInteger As Boolean)
>
> mToStringDisplaysInteger = displayInteger
>
> End Set
>
> End Property
>
> Public Property Value() As Integer
>
> Get
>
> Value = mInteger
>
> End Get
>
> Set(ByVal numb As Integer)
>
> mInteger = numb
>
> End Set
>
> End Property
>
> End Class
>
>
|