【问题标题】:WPF Datagrid refresh dataWPF Datagrid 刷新数据
【发布时间】:2010-12-19 13:31:46
【问题描述】:

我使用以下代码将数组列表绑定到数据网格

//fill datagrid
    public DataTable configData
    {
        get
        {
            DataSet dsTemp = new DataSet();
            DataTable Tables = new DataTable();
            dsTemp.Tables.Add(Tables);

            dsTemp.Tables[0].Columns.Add("val", System.Type.GetType(
            "System.String" ) );

            foreach (string str in IMDB.ML.Class.Config.getReadPaths())
            {
                if (str != string.Empty)
                {
                    DataRow myRow = dsTemp.Tables[0].NewRow();
                    myRow[0] = str;
                    dsTemp.Tables[0].Rows.Add(myRow);
                }
            }
            return dsTemp.Tables[0];
        }
    }

但是,在向列表中添加一些新数据后,我需要能够刷新数据。

datagrid.Items.Refresh() 不起作用...

谢谢!

【问题讨论】:

标签: wpf datagrid refresh


【解决方案1】:

首先,您返回的是 DataTable,而不是 ArrayList。 其次,如果您使用 DataView,您的网格将在数据更新时更新...

//fill datagrid
    public ICollectionView configData
    {
        get
        {
            DataTable table = new DataTable();

            table.Columns.Add("val", typeof(string) );

            foreach (string str in IMDB.ML.Class.Config.getReadPaths())
            {
                if ( !string.IsNullOrEmpty( str ) )
                {
                    DataRow myRow = table.NewRow();
                    myRow["val"] = str;
                    table.Rows.Add(myRow);
                }
            }
            return CollectionViewSource.GetDefaultView( dsTemp.Tables[0] )        
        }
    }

【讨论】:

  • 谢谢,在我将此视图重新加载为 itemsource 后问题解决了
猜你喜欢
  • 2013-11-06
  • 2012-12-09
  • 2010-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-27
  • 2014-07-27
  • 1970-01-01
相关资源
最近更新 更多