从C#.net向Access添加记录

时间:2012-09-26 17:02:14

标签: c# ms-access

我对C#.net完全陌生。将记录添加到连接数据源(访问文件)时遇到问题。编码是:

    int MaxRows = 0;
    int inc = 0;

    private void Form2_Load(object sender, EventArgs e)
    {
        con = new System.Data.OleDb.OleDbConnection();
        ds1 = new DataSet();

        con.ConnectionString = " Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:/Documents and Settings/user/My Documents/anchu.accdb";
        string sql = "SELECT * From Table1";
        da = new System.Data.OleDb.OleDbDataAdapter(sql, con);

        con.Open();

        da.Fill(ds1, "Table1");
        NavigateRecords();

        con.Close();
        //con.Dispose();
    }
    private void NavigateRecords()
    {
        DataRow drow = ds1.Tables["Table1"].Rows[0];

        textBox1.Text = drow.ItemArray.GetValue(0).ToString();
        textBox2.Text = drow.ItemArray.GetValue(1).ToString();
        textBox3.Text = drow.ItemArray.GetValue(2).ToString();
        textBox4.Text = drow.ItemArray.GetValue(3).ToString();
    }


    private void groupBox1_Enter(object sender, EventArgs e)
    {

    }

    private void button2_Click(object sender, EventArgs e)
    {
        textBox1.Clear();
        textBox2.Clear();
        textBox3.Clear();
        textBox4.Clear();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        System.Data.OleDb.OleDbCommandBuilder cb;
        cb = new System.Data.OleDb.OleDbCommandBuilder(da);

        DataRow drow = ds1.Tables["Table1"].NewRow();
        drow[1] = textBox1.Text();
        drow[2] = textBox2.Text();
        drow[3] = textBox3.Text();
        drow[4] = textBox4.Text();

        ds1.Tables["Table1"].Rows.Add(drow);

        MaxRows = MaxRows + 1;
        inc = MaxRows - 1;

        da.Update(ds1, "Table1");

        MessageBox.Show("Entry Added");
    }
}

我得到8个相同类型的错误!

  

非可调用成员'System.Windows.Forms.Control.Text'不能像方法一样使用。

1 个答案:

答案 0 :(得分:3)

错误示例

drow[1] = textBox1.Text();

替换为

drow[1] = textBox1.Text;

属性不需要括号,Text是属性,而不是方法。