none
有關BindingSource的AddNew相關問題。 RRS feed

  • 問題

  • 現在我資料庫分別有"ID,Name,Phone,Address,Gender"這五個欄位…

    然後我在表單頁面上只拉出Name,Phone,Address,Gender這四個欄位而以…而且也都和資料庫設定了BindingSource了。

    然後我執行好BindingSource.Addnew()後,在面頁只能輸入這四個欄位,輸入完後執行update動作會出現錯誤。因ID欄位沒有出現在頁面上可供輸入。故不會有值存入

    請問有什麼方法可以在執行完AddNew函式後,我可以用程式直接對ID這欄位進行給值的動作。

    ps.ID為主鍵值。
    2010年3月4日 上午 08:01

解答

  • 你的BindingSource的DataSource屬性指向誰 ?
    假設你指向一個DataTable, 你在BindingSource.AddNew後, 因為指標會移到BinndingSource的最後一筆
    可以用CType(BindingSource執行個體.Current, DataRowView).Item("ID")=你的ID

    MSDN 文件庫很重要
    問題本身越具體, 越容易得到大家的回應
    回應幫助你的人是一種禮貌, 良好的禮貌有助於激發大家對你問題回應的熱情
    • 已標示為解答 justinwu 2010年3月8日 上午 12:21
    2010年3月6日 下午 02:24
    版主

所有回覆

  • 你在資料庫中有將ID設為自動編號嗎 ?
    MSDN 文件庫很重要
    問題本身越具體, 越容易得到大家的回應
    回應幫助你的人是一種禮貌, 良好的禮貌有助於激發大家對你問題回應的熱情
    2010年3月4日 上午 08:59
    版主
  • 可是我的ID是要自己產生的…不是流水號的說…因為每次的ID編號都是不同的…

    ps..如果我在執行addnew後,如果某個欄位是numeric的格式,然後沒有去變動直接存檔的話…在資料庫會存入null而不是目前numeric顯示出來的值。可以請教如果解決嗎?謝謝…
    2010年3月6日 上午 07:55
  • 在BindingSource的OnAddingNew事件中
    自行設定 AddingNewEventArgs 的NewObject


    MSDN AddingNewEventArgs 說明
    2010年3月6日 上午 09:44
  • 你的BindingSource的DataSource屬性指向誰 ?
    假設你指向一個DataTable, 你在BindingSource.AddNew後, 因為指標會移到BinndingSource的最後一筆
    可以用CType(BindingSource執行個體.Current, DataRowView).Item("ID")=你的ID

    MSDN 文件庫很重要
    問題本身越具體, 越容易得到大家的回應
    回應幫助你的人是一種禮貌, 良好的禮貌有助於激發大家對你問題回應的熱情
    • 已標示為解答 justinwu 2010年3月8日 上午 12:21
    2010年3月6日 下午 02:24
    版主
  • o...原來是這樣子…可以直接對bindingsource進行轉行的動作…謝謝Bill Chung大大…
    看來還有很多東西還要學習學習的…
    2010年3月8日 上午 12:22