Quantcast
Channel: Windows Presentation Foundation (WPF) forum
Viewing all articles
Browse latest Browse all 18858

Question about binding entity to WPF form

$
0
0

I'm attempting to bind a lookup table to a grid on a WPF form, using this as a guide.  The form displays with column headings but no data.  However there are 73 rows of blank data.  There should be 73 rows of actual data. 

This lookup table is an entity class:

Partial Public Class tlkpProcedures_PartB
    Public Property CPT As String
    Public Property ProcedureName As String
    Public Property BillingAmount As Nullable(Of Decimal)
    Public Property UniqueID As Integer

    'Public Overridable Property tblBilling_PartB As ObservableCollection(Of tblBilling_PartB) = New ObservableCollection(Of tblBilling_PartB)

Notice that I commented out the last line.  This was automatically generated code but since I don't care about related billing data at this point, it was commented out.  I'm not sure this is even relevant to my problem.

I created an observable collection of this class:

Public Class PartBProcedures
    Inherits ObservableCollection(Of tlkpProcedures_PartB)

        Public Sub New()

        If _conn.State = ConnectionState.Closed Then
            _conn.Open()
        End If

        _cmd = New SqlCommand()
        _cmd.Connection = _conn

        Dim sSQL As String = "SELECT " & _"tlkpProcedures_PartB.CPT, " & _"ISNULL(tlkpProcedures_PartB.ProcedureName, '') AS ProcedureName, " & _"ISNULL(tlkpProcedures_PartB.BillingAmount, 0) AS BillingAmount, " & _"tlkpProcedures_PartB.UniqueID " & _"FROM tlkpProcedures_PartB " & _"ORDER BY CPT"

        _cmd.CommandText = sSQL

        Dim Reader As SqlDataReader = _cmd.ExecuteReader()

        If Reader.HasRows Then
            'bolCheckDate = False

            While Reader.Read()
                MyBase.Add(New tlkpProcedures_PartB)
            End While
        End If

        _conn.Close()

    End Sub

Bound this class to the grid:

<Window.Resources><local:PartBProcedures x:Key="ProcedureData"/></Window.Resources><DataGrid HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Height="251" Width="271"
         ItemsSource="{Binding Source={StaticResource ProcedureData}}" />

Results:

 


Thanks.



Viewing all articles
Browse latest Browse all 18858

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>