Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试使用Linq显示数据库中的数据时,WPF DataGrid上出现空异常问题_Wpf_Linq_Datagrid - Fatal编程技术网

尝试使用Linq显示数据库中的数据时,WPF DataGrid上出现空异常问题

尝试使用Linq显示数据库中的数据时,WPF DataGrid上出现空异常问题,wpf,linq,datagrid,Wpf,Linq,Datagrid,下午的小伙子们/姑娘们 我试图在数据网格中显示数据库表中的数据,但得到一个空异常 下面是我的代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; usin

下午的小伙子们/姑娘们

我试图在数据网格中显示数据库表中的数据,但得到一个空异常

下面是我的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Configuration;
using System.Xml.Linq;

namespace LinkToSQL
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {

        LinqtoSQLDataClassesDataContext dataContext;

        public MainWindow()
        {
            string connectionString = ConfigurationManager.ConnectionStrings["LinkToSQL.Properties.Settings.MyFirstDBConnectionString"].ConnectionString;

            dataContext = new LinqtoSQLDataClassesDataContext(connectionString);

            InsertUniversity();
        }

        public void InsertUniversity()
        {
            University yale = new University();
            yale.Name = "Yale";
            dataContext.Universities.InsertOnSubmit(yale);
            dataContext.SubmitChanges();
            MainDataGrid.ItemsSource = dataContext.Universities;
        }
    }
}
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
使用System.Threading.Tasks;
使用System.Windows;
使用System.Windows.Controls;
使用System.Windows.Data;
使用System.Windows.Documents;
使用System.Windows.Input;
使用System.Windows.Media;
使用System.Windows.Media.Imaging;
使用System.Windows.Navigation;
使用System.Windows.Shapes;
使用系统配置;
使用System.Xml.Linq;
名称空间链接到SQL
{
/// 
///MainWindow.xaml的交互逻辑
/// 
公共部分类主窗口:窗口
{
LinqtoSQLDataClassesDataContext;
公共主窗口()
{
string connectionString=ConfigurationManager.connectionString[“LinkToSQL.Properties.Settings.MyFirstDBConnectionString”]。connectionString;
dataContext=新的LinqtoSQLDataClassesDataContext(connectionString);
插入大学();
}
公共教育学院()
{
耶鲁大学=新大学();
yale.Name=“yale”;
dataContext。大学。InsertOnSubmit(耶鲁);
dataContext.SubmitChanges();
MainDataGrid.ItemsSource=dataContext.universions;
}
}
}
当我运行它时,我得到一个异常,它告诉我dataGrid是空的:

这是我的XAML:

<Window x:Class="LinkToSQL.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:LinkToSQL"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid>
        <DataGrid x:Name="MainDataGrid" VerticalAlignment="Center" HorizontalAlignment="Center" Height="400" Width="760"/>
    </Grid>
</Window>


提前谢谢

调用
InitializeComponent()
在访问XAML标记中定义的任何元素之前,在构造函数中执行的第一件事:

public MainWindow()
{
    InitializeComponent();

    string connectionString = ConfigurationManager.ConnectionStrings["LinkToSQL.Properties.Settings.MyFirstDBConnectionString"].ConnectionString;

    dataContext = new LinqtoSQLDataClassesDataContext(connectionString);

    InsertUniversity();
}

您是否删除了
初始化组件()
公共主窗口(){…}
?从它给你的错误中可以看出,你的dataGrid是空的,因为它没有初始化。。我真不敢相信我竟然忽略了这件事,真是个愚蠢的错误!非常感谢!!!!!!!