您的位置:程序门 -> .net技术 -> c#



如何使用bindingsource.addnew添加數據


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


如何使用bindingsource.addnew添加數據[已结贴,结贴人:tom385]
发表于:2007-02-13 15:00:38 楼主
bindingsource   mbs   =   new   bindingsource();
              datatable   mdtproducts   =   new   datatable();
    mbs.datasource   =   mdtproducts;

binding   guidbinding   =   new   binding( "text ",   mbs   ,   "empguid ");
binding   idbinding   =   new   binding( "text ",   mbs   ,   "empid ");
binding   namebinding   =   new   binding( "text ",   mbs   ,   "empname ");
binding   malebinding   =   new   binding( "text ",   mbs   ,   "empismale ");

                        txtguidr.databindings.add(guidbinding);
                        txtid.databindings.add(idbinding);
                        txtname.databindings.add(namebinding);
                        txtmale.databindings.add(malebinding);
我是利用bindingsource   作數據源,textbox控件都與此數據源綁定!
我現在想想利用bindingsource.addnew來添加數據,
控件和數據源是綁定好的,所以在添加的時候應該是根據綁定控件textbox中的值來自動添加到數據庫相應的字段中,可是找了好久的資料都沒有自動添加的,都是要手動賦值的,比如bindingsource.add(textbox1.text);
有沒有不需要賦值而是自動根據綁定控件添加數據的,求教高手!
謝謝大家了!
发表于:2007-02-13 15:07:001楼 得分:40
直接addnew()
发表于:2007-02-13 15:10:142楼 得分:0
謝謝回答
可是我不懂,直接就可以自動把綁定控件中的值謝到數據源中了麼?
发表于:2007-02-13 15:14:233楼 得分:0
因為你的控件是和bindignsource綁定了的,所以在控件裡改寫值時,實際上在操作bidingsource的數據源
发表于:2007-02-13 15:22:584楼 得分:0
public   void   updatedata()
                {            
                        mbs.addnew();
                updatedatatable(mdtproducts,   "select   *   from   cmemployee ",   "cmcomuse ").tostring();//這個是更新數據庫的
                }

請問,這樣是可以嗎“?
发表于:2007-02-13 15:28:175楼 得分:0
你這是添加一新空行?可以,如果你要這麼做的話。
发表于:2007-02-13 15:30:016楼 得分:0
是的,太對了
可是我控件裡的值是寫好的啊
如何變成有值的啊
謝謝你了
发表于:2007-02-13 15:32:467楼 得分:0
“如何變成有值的啊”是什麼意思?
发表于:2007-02-13 15:35:008楼 得分:0
就是數據庫中不是空的
发表于:2007-02-13 15:38:289楼 得分:0

你綁定之後,控件顯示的就是你數據庫中的值呀。
发表于:2007-02-13 15:38:4710楼 得分:0
拜托大哥指點下啊,是不是哪裡的屬性沒有設定!
害學要什麼代碼!
发表于:2007-02-13 15:39:5611楼 得分:0
你現在程序運行有什麼問題?
发表于:2007-02-13 15:40:0712楼 得分:0
我想在綁定之後再進行數據添加,
因為綁定已經完成,所以添加應該就是根據綁定控件中的值(我手動重新謝的值)傳道數據庫中
了吧
发表于:2007-02-13 15:40:3813楼 得分:0
添加不了,總是修改當條記錄
发表于:2007-02-13 15:41:3814楼 得分:0
而且我用adapter.update更新數據庫,連續點擊兩次就是更新兩次就會出現錯誤!
发表于:2007-02-13 15:49:0115楼 得分:0
你添加的代碼不會真的是放在updatedata()裡吧
发表于:2007-02-13 15:58:1016楼 得分:0
我的代碼就是這樣寫的,我知道錯了,不知道錯在哪裡了!
发表于:2007-02-13 15:59:0217楼 得分:0
其它的代碼就沒有了!
是不是要增加addingnew事件啊?
发表于:2007-02-13 16:05:3518楼 得分:0
一般情況下,我是把添加代碼寫在一個button的click事件裡的,相當於點添加按鈕才添加一行新數據
如果你那樣的話,程序添加一行新數據後,接著就update了,用戶哪有“時間”修改控件的值。
发表于:2007-02-13 16:08:2119楼 得分:0
是的,我後來把新增的方法寫在button中,再確定更新的地方更新數據庫,會出現錯誤,
你在用做添加,修改刪除都是可以的是嗎?
而且可以多次根新嗎?
发表于:2007-02-13 16:09:5320楼 得分:0
void   button1_click(object   sender,   eventargs   e)
{
      mbs.addnew();
}
public   void   updatedata()
                {            
                updatedatatable(mdtproducts,   "select   *   from   cmemployee ",   "cmcomuse ").tostring();//這個是更新數據庫的
                }
发表于:2007-02-13 16:14:1221楼 得分:0
當然可以多次更新,新報的什麼錯?
但update之前最好mbs.endedit()
发表于:2007-02-13 16:20:4722楼 得分:0
恩,知道了,好象可以了!
謝謝你了!
发表于:2007-02-13 16:29:2223楼 得分:0
不得不再感謝你,暈了我好久的問題啊,我是菜鳥,以後更加要虛心了!
发表于:2007-02-13 16:37:2524楼 得分:0
大俠,當我添加第二次的時候就是這樣的錯誤

違反   primary   key   條件約束   'pk_cmemployee '。無法在物件   'dbo.cmemployee '   中插入重複的索引鍵。
陳述式已經結束。
发表于:2007-02-14 10:33:0725楼 得分:0
你的表cmemployee設置了主鍵,但你保存時新增的數據時,新增的數據行的主鍵字段的值和已有記錄的某行的主鍵字段的值重復了,簡單說就是主鍵重複了。


快速检索

最新资讯
热门点击