C#.NET Bound TexField不会更新datarow中的值

时间:2013-07-17 19:56:59

标签: c# data-binding datarow

我有一些奇怪的问题,我需要帮助。给出以下代码片段:

public partial class CliUpdate : Form
{       

    static DataRow cliRecord;
    static DataView cliView;

    public CliUpdate(DataRow dr)
    {
        InitializeComponent();
        cliRecord = dr;
        cliView = cliRecord.Table.DefaultView;          
        SetFieldValues();                       
    }               

    void SetFieldValues(){                  
        string recordid = cliRecord["recordid"].ToString();
        cliView.RowFilter = "recordid='" + recordid + "'";          
        tb_ClientName.DataBindings.Add("Text",cliView,"clientname");
        tb_basefolder.DataBindings.Add("Text",cliView,"basefolder");
        cb_CollectionOutput.DataBindings.Add("Text",cliView,"outputtype");
        nud_SmallBalance.DataBindings.Add("Value",cliView,"smallbalance");

在表单上我有一个名为tb_basefolder的文本框。如果我实际在文本框中键入内容,datarow字段会正确更新但是如果我通过设置.Text属性给文本框一个值,那么值不会在数据行上更新(即tb_basefolder.Text = @“c:\测试“;)有人可以解决一些问题吗?我提供了足够的信息吗?

1 个答案:

答案 0 :(得分:1)

这有用吗?

   tb_basefolder.DataBindings.Add("Text",cliView,"basefolder",  false, DataSourceUpdateMode.OnPropertyChanged);

为什么要将静态成员用于dataview和datarow?