在Visual Studio中创建表适配器

时间:2018-04-14 00:55:00

标签: c#

我正在尝试使用datagridview在无线电点击事件中显示几个不同的表格数据。我的问题是表适配器没有显示,但当我检查.xsd文件时,它说它在那里,但在设计中它不是,我不知道该怎么做才能让它显示在那里。这是我的代码:

private void QBC_CM_Form_Load(object sender, EventArgs e)
{
    // fill the form with the users on form load
    this.usersTableAdapter.Fill(this.qbc_clothing_ministryDS.users);  
}

private void radioBtnUserReports_CheckedChanged(object sender, EventArgs e)
{
    // since user reports was selected
    // bind the datasource to this.usersBindingSource (bound to users table)
    dgvReports.DataSource = this.usersBindingSource;

    // rename the header text visible (so it's not the database column names)
    dgvReports.Columns[0].HeaderText = "ID";
    dgvReports.Columns[1].HeaderText = "First Name";
    dgvReports.Columns[2].HeaderText = "Last Name";
    dgvReports.Columns[3].HeaderText = "Address";
    dgvReports.Columns[4].HeaderText = "Phone";
    dgvReports.Columns[5].HeaderText = "Cell";
    dgvReports.Columns[6].HeaderText = "Email";
}

private void radioBtnClothingReports_CheckedChanged(object sender, EventArgs e)
{
    // since the clothing reports was selected
    // bind the datasource to this.qbc_clothing_ministryDataSet1.clothing_reports (clothing reports table)
    this.qbcClothingReportsBindingSource.DataSource = this.qbc_clothing_ministryDataSet1.clothing_reports;

    dgvReports.DataSource = this.qbcClothingReportsBindingSource;

    //  rename the header text visible (so it's not the database column names)
    dgvReports.Columns[0].HeaderText = "ID";
    dgvReports.Columns[1].HeaderText = "Name";
    dgvReports.Columns[2].HeaderText = "Clothing Taken";
    dgvReports.Columns[3].HeaderText = "Month";
    dgvReports.Columns[4].HeaderText = "Year";

    // why is this data from the db not showing up?
}

以下是一些屏幕截图,也有助于解释(希望如此)

.xsd文件:enter image description here

表单设计文件:enter image description here

程序正在运行 - enter image description here

最后是数据库中的数据(mssql server) - enter image description here

我知道如果我可以引用表适配器,我想我可以加载数据但它没有显示(比如usersTableAdapter)。

任何帮助将不胜感激

谢谢!

1 个答案:

答案 0 :(得分:0)

尝试转到Visual Studio(VS)中的项目选项卡,然后单击添加新数据源... 选项。将弹出一个窗口,选择数据库选项,然后单击[Next>]。然后单击数据集,然后再次单击[Next>]。这将显示数据连接设置。通过单击[新建连接...]按钮创建新建连接。这将允许您添加连接。在服务器名称文本框中输入服务器名称。然后,您可以在此窗口的登录到服务器部分中输入登录详细信息。完成这些操作后,单击[Test Connection]按钮,一切都会很好。如果这样不起作用,请确保在此窗口中输入了所有正确的信息。

如果一切正常,请在该窗口上单击[确定],然后单击[下一步>],将出现一个窗口复选框。在表格下,选择要使用的所有表格。然后单击[完成]。

现在,您应该能够将表适配器用于数据库中的数据表,例如:

var myTableAdapter = new nameYouGaveDataSetTableAdapters.youTableTableAdapter();
System.Data.DataTable dt = myTableAdapter.GetData();

这会将数据加载到数据表dt中。“ nameYouGaveDataSetTableAdapters”默认命名为yourDataBaseTableAdapters。