【问题标题】:WPF Datagrid Columns return empty values on some fieldsWPF Datagrid Columns 在某些字段上返回空值
【发布时间】:2016-10-14 16:39:21
【问题描述】:

我的 SQL Server 查询中的 WPF 中的数据网格有问题。结果运行良好,但在我的数据网格中,它返回了一些缺少值的空列。

这是我的 SQL 查询

SELECT  
    DATENAME(dw, CAST(DATEPART(m, TASK.Date) AS VARCHAR) + '-' + 
                 CAST(DATEPART(d, TASK.Date) AS VARCHAR) + '-' + 
                 CAST(DATEPART(yy, TASK.DATE) AS VARCHAR)) AS 'Day Name',
    EMP.Employee_ID AS 'Employee ID',
    EMP.Employee_LastName + ' ' + EMP.Employee_FirstName AS 'Employee Name',
    TASK.Task_Assigned AS 'No. of Assigned Task',
    TASK.Task_Completed AS 'No. of Completed Task',
    TASK.Task_Remaining AS 'No. of Remaining Task',
    TASK.Total_Tasks AS 'Total No. Of Tasks Including Lastweek',
    CAST(Task.Date As DATE) AS 'Date'
FROM
    [dbo].Employee_Table EMP
INNER JOIN
    [dbo].Tasks_Table TASK ON EMP.Employee_ID = TASK.Employee_ID

输出是这样的

SQL Server 2012 Execute Query Output

但是在我的 WPF 应用程序中运行它之后,这就是我得到的

WPF execution of stored proc

这是我使用 vb.net 运行 SQL 查询的方式

    Dim conn As SqlConnection = New SqlConnection("")
    Dim sqlCommand As SqlCommand = New SqlCommand()

    sqlCommand.CommandText = "[dbo].[DisplayTTM]"
    sqlCommand.CommandType = CommandType.StoredProcedure

    sqlCommand.Connection = conn

    conn.Open()

    sqlCommand.ExecuteNonQuery()

    objDataAdapter = New SqlDataAdapter(sqlCommand)
    objDataAdapter.Fill(ds, "TeamTaskManager")

    dgrid_MyTTM.DataContext = ds

    conn.Close()

这是我的数据网格 wpf 代码。

 <DataGrid Name="dgrid_MyTTM" ItemsSource="{Binding Path=TeamTaskManager}" AutoGenerateColumns="True" IsReadOnly="True">
 </DataGrid>

PS。当我使用ds.getXml() 时,我看到它从查询中获取值,但没有在屏幕上输出它们。希望有人可以帮助我。谢谢

【问题讨论】:

    标签: sql-server wpf vb.net datagrid


    【解决方案1】:

    我已经找到我的答案了,我就是这样做的

                    <DataGrid.Columns>
                        <DataGridTextColumn Header="Day" Binding="{Binding Path='a'}" />
                        <DataGridTextColumn Header="Employee ID" Binding="{Binding Path='b'}" />
                        <DataGridTextColumn Header="Employee Name" Binding="{Binding Path='c'}" />
                        <DataGridTextColumn Header="No. of Assigned Task" Binding="{Binding Path='d'}" />
                        <DataGridTextColumn Header="No. of Assigned Task Completed" Binding="{Binding Path='e'}" />
                        <DataGridTextColumn Header="No. of Assigned Task Remaining" Binding="{Binding Path='f'}" />
                        <DataGridTextColumn Header="Total No. of Task including Yesterday" Binding="{Binding Path='g'}" />
                        <DataGridTextColumn Header="Date" Binding="{Binding Path='h'}" />
                    </DataGrid.Columns>  
    

    突然间我所有的记录都摆在了桌子上。谢谢各位。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-07
      • 2020-03-14
      • 2012-03-25
      • 1970-01-01
      • 2015-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多