【问题标题】:Fill datagrid with dataTable wpf用dataTable wpf填充数据网格
【发布时间】:2013-05-23 11:24:26
【问题描述】:

我得到了这张用文本文件中的数据制作的表格。 我将文本中的每一行拆分为一个数组,然后将其放入表格中, 现在我想将表绑定到datagrid. 好的,我可以通过datagrid.itemssource = table.defuealView 完成此操作 但是我想做到这一点,当我更改数据网格中的数据时,我可以按下一个按钮,将数据网格中的所有数据导出到数据表或数组中。

我该怎么做?始终绑定在 xml 文件周围。谁能指出我正确的方式?

请帮忙。

【问题讨论】:

    标签: wpf datagrid datatable


    【解决方案1】:

    既然您已经在数据表中拥有它...您是否尝试过通过

    DataTable oDT = new DataTable();
    // populated with your columns and data from whatever source
    oDT.WriteXml( "C:\SomePath\YourXMLOutput.xml" );
    

    【讨论】:

    • 我想在完成更改后将表格取出,并将每一行保存在 string[] 中,例如 row[0] = string[0];对不起,如果我没有正确定义我的问题。
    • @DaCh,WriteXML 将数据表中的所有内容写入 XML 格式的新文件。每一行,每一列。如果您同时包含 xml 模式,则读取 IN XML 也几乎同样容易。但是...如果不是这种情况,您是否只想转储呈现给用户的数据网格中的每一行、每一列?对于每一行,您只想将其作为字符串转储...如何分隔字段之间的值...如果日期、数字、带有逗号的字符串怎么办?很多事情要考虑。
    • 重点是我想获取数据网格中的每一行,并将其转换为字符串 []。就像我找到了一种解决方法,可以像我发布的那样做到这一点,但大多数情况下都有一种更简单的方法来做到这一点。
    【解决方案2】:

    好的,所以我找到了一个解决方法,它不是正确的方法,但它有效:

    List<String[]> list = new List<string[]>();
    
    foreach (DataRowView item in Datagrid.ItemsSource)
    {
        DataRowView vivew = item;
        string[] line = new string[vivew.Row.ItemArray.Length];
    
        for (int i = 0; i < line.Length; i++)
        {
            line[i] = vivew.Row[i].ToString();    
        }
    
        list.Add(line);
    }
    

    【讨论】:

      猜你喜欢
      • 2018-11-04
      • 1970-01-01
      • 2013-12-19
      • 1970-01-01
      • 2020-11-17
      • 2011-06-15
      • 1970-01-01
      • 2013-05-03
      • 1970-01-01
      相关资源
      最近更新 更多