簡體   English   中英

文本框控件更新后,Bindingsource 不會更新

[英]Bindingsource won't update after the textbox Conrol updates

我有一個表單,它的控件綁定到名為“userbindingsource”的綁定源。 當表單加載所有 bindingssource 中的值將被設置為等效的 Textbox。 但是當文本框值改變時,綁定源不會更新。 它仍然顯示第一個值

在此處輸入圖片說明

例如,加載后我更改文本框中的名字,然后單擊保存按鈕調用 saveRecord()。 當我檢查 (userBindingSource.DataSource as User) 時,它仍然包含第一個名字而沒有任何更改。

 public void SaveRecord()
    {
        int i = 0;
        User user = userBindingSource.DataSource as User;
        if (user.Id > 0)
            user.State = State.Modified;
        using (ECarServiceClient client = new ECarServiceClient())
        {
            i = client.SaveUser(user);
        }
    }

如何使綁定源自動更新?

如果文本框綁定具有DataSourceUpdateMode.OnValidation (默認值),並且您直接從在文本框中鍵入內容到單擊“保存”按鈕,則會在文本框驗證之前處理“保存”單擊。 驗證是使 BindingSource 更新 User 對象的原因。

解決方法是在this.Validate()的開頭調用this.Validate() 這會觸發對當前表單及其所有祖先中的焦點控件的驗證。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM