textbox与datagirdview组合新增解决思路

textbox与datagirdview组合新增
[img=http://my.iteye.com/admin/picture/114580#][/img]
想做一个批量新增的页面,页面由两个textbox一个datagirdview还有两个按钮,新增的时候在textbox1、textbox2里填数据,另外也在datagirdview里填数据,datagirdview可以填多行数据,点击保存就把数据查到数据库里。datagirdview里有多少行数据插入到数据textbox就有多少条数据插入到数据库里。如图
表:
create table test3
(
id int identity (1,1) not null,
 [入仓单编号] int,
[经手人]  nvarchar(8),
[物品名称] nvarchar(8),
[单价] int,
[数量] int,
[金额] money
)
批量的代码已写出,但是和textbox一起插入数据就不知道怎写了。
麻烦高手解决,帮忙修改一下代码
public partial class Form5 : Form
    {
        public Form5()
        {
            InitializeComponent();
        }
        SqlConnection conn;
        SqlDataAdapter adapter;
        private DataTable dbconn(string strSql)
        {
            conn.Open();
            this.adapter = new SqlDataAdapter(strSql, conn);
            DataTable dtSelect = new DataTable();
            int rnt = this.adapter.Fill(dtSelect);
            conn.Close();
            return dtSelect;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            if (dbInsert())
            {
                MessageBox.Show("新增成功!");
            }
        }
        private Boolean dbInsert()
        {
            conn = new SqlConnection("Data Source=.;Initial Catalog=CS;Persist Security Info=True;User ID=sa;Password=rt");
            string strSql = "select GoodsName,StorageID,GoodsID,UnitPrice,Amount,SumPrice,Note,HandlePeople from TbShInDetail";
            DataTable dtInsert = new DataTable();
            dtInsert = this.dbconn(strSql);
            dtInsert.Rows.Clear();
            DataTable dtShow = new DataTable();
            dtShow = (DataTable)this.dataGridView1.DataSource;
            for (int i = 0; i < dtShow.Rows.Count; i++)
            {
                dtInsert.ImportRow(dtShow.Rows[i]);
            }
            try
            {
                this.conn.Open();
                SqlCommandBuilder CommandBuiler;
                CommandBuiler = new SqlCommandBuilder(this.adapter);
                this.adapter.Update(dtInsert);
                this.conn.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message.ToString());
                return false;
            }
            dtInsert.AcceptChanges();
            return true;
        }
        private void button3_Click(object sender, EventArgs e)