Winforms 利用数据集在数据网格中显示窗体Xml

Winforms 利用数据集在数据网格中显示窗体Xml,winforms,c#-4.0,Winforms,C# 4.0,我对窗口窗体和数据集非常陌生。我有一个问题看起来很简单,但我还不能回避。 我有XML数据,我想在窗口形式的数据网格中显示它。(它是syncfusion databoundgrid) 我的XML数据如下所示 <?xml version="1.0" encoding="utf-8" ?> <Authors_Table> <authors> <au_id>172-32-1176</au_id> <au_lname&g

我对窗口窗体和数据集非常陌生。我有一个问题看起来很简单,但我还不能回避。 我有XML数据,我想在窗口形式的数据网格中显示它。(它是syncfusion databoundgrid) 我的XML数据如下所示

<?xml version="1.0" encoding="utf-8" ?>
<Authors_Table>
  <authors>
    <au_id>172-32-1176</au_id>
    <au_lname>White</au_lname>
    <au_fname>Johnson</au_fname>
    <phone>408 496-7223</phone>
    <addresses>
    <address>10932 Bigge Rd.</address>
    <city>Menlo Park</city>
    <state>CA</state>
    <zip>94025</zip>
    </addresses>
    <contract>true</contract>
  </authors>
  <authors>
    <au_id>213-46-8915</au_id>
    <au_lname>Green</au_lname>
    <au_fname>Margie</au_fname>
    <phone>415 986-7020</phone>
    <addresses>
    <address>309 63rd St. #411</address>
    <city>Oakland</city>
    <state>CA</state>
    <zip>94618</zip>
      </addresses>
    <contract>true</contract>
  </authors>
  <authors>
    <au_id>238-95-7766</au_id>
    <au_lname>Carson</au_lname>
    <au_fname>Cheryl</au_fname>
    <phone>415 548-7723</phone>
    <addresses>
    <address>589 Darwin Ln.</address>
    <city>Berkeley</city>
    <state>CA</state>
    <zip>94705</zip>
      </addresses>
    <contract>true</contract>
  </authors>
  <authors>
    <au_id>267-41-2394</au_id>
    <au_lname>Hunter</au_lname>
    <au_fname>Anne</au_fname>
    <phone>408 286-2428</phone>
    <addresses>
    <address>22 Cleveland Av. #14</address>
    <city>San Jose</city>
    <state>CA</state>
    <zip>95128</zip>
      </addresses>
    <contract>true</contract>
  </authors>
  <authors>
    <au_id>274-80-9391</au_id>
    <au_lname>Straight</au_lname>
    <au_fname>Dean</au_fname>
    <phone>415 834-2919</phone>
    <addresses>
    <address>5420 College Av.</address>
    <city>Oakland</city>
    <state>CA</state>
    <zip>94609</zip>
      </addresses>
    <contract>true</contract>
  </authors>
</Authors_Table>
结果是这样的

但我真的很想这样表现

如何将xml节点的子元素显示在与数据网格中的同级节点相同的一侧。 非常感谢。
L.E.

问题在于您的xml:

  <authors>
    <au_id>172-32-1176</au_id>
    <au_lname>White</au_lname>
    <au_fname>Johnson</au_fname>
    <phone>408 496-7223</phone>
    <addresses>
    <address>10932 Bigge Rd.</address>
    <city>Menlo Park</city>
    <state>CA</state>
    <zip>94025</zip>
    </addresses>
    <contract>true</contract>
  </authors>

172-32-1176
白色
约翰逊
408 496-7223
比格路10932号。
门罗公园
加利福尼亚州
94025
真的
请注意,实际上您有一个子元素
用于链接到多个地址组。将xml更改为如下所示:

  <authors>
    <au_id>172-32-1176</au_id>
    <au_lname>White</au_lname>
    <au_fname>Johnson</au_fname>
    <phone>408 496-7223</phone>
    <address>10932 Bigge Rd.</address>
    <city>Menlo Park</city>
    <state>CA</state>
    <zip>94025</zip>
    <contract>true</contract>
  </authors>

172-32-1176
白色
约翰逊
408 496-7223
比格路10932号。
门罗公园
加利福尼亚州
94025
真的
您将获得所需的输出


WinForms
DataGridView
不是为呈现嵌套记录而设计的。

问题在于xml:

  <authors>
    <au_id>172-32-1176</au_id>
    <au_lname>White</au_lname>
    <au_fname>Johnson</au_fname>
    <phone>408 496-7223</phone>
    <addresses>
    <address>10932 Bigge Rd.</address>
    <city>Menlo Park</city>
    <state>CA</state>
    <zip>94025</zip>
    </addresses>
    <contract>true</contract>
  </authors>

172-32-1176
白色
约翰逊
408 496-7223
比格路10932号。
门罗公园
加利福尼亚州
94025
真的
请注意,实际上您有一个子元素
用于链接到多个地址组。将xml更改为如下所示:

  <authors>
    <au_id>172-32-1176</au_id>
    <au_lname>White</au_lname>
    <au_fname>Johnson</au_fname>
    <phone>408 496-7223</phone>
    <address>10932 Bigge Rd.</address>
    <city>Menlo Park</city>
    <state>CA</state>
    <zip>94025</zip>
    <contract>true</contract>
  </authors>

172-32-1176
白色
约翰逊
408 496-7223
比格路10932号。
门罗公园
加利福尼亚州
94025
真的
您将获得所需的输出


WinForms
DataGridView
不是为呈现嵌套记录而设计的。

是的,如果我更改它,您是对的,它会工作的。但这只是我为测试代码而创建的一个示例数据。如果不更改xml文件但输出相同,怎么样?那么我重复一下…*WinForms DataGridView不是为呈现嵌套记录而设计的。*…至少在默认情况下不是这样。您可能需要查看其他为您执行此操作的控件—可能是DevEx控件。如果我已经回答了你发布的问题,那么你应该把它标记为答案。其他任何问题都应作为另一个问题发布。;)您在嵌套记录上是正确的。它不能解决我的问题,但它给了我方向。谢谢你是对的,如果我改变它,它会工作的。但这只是我为测试代码而创建的一个示例数据。如果不更改xml文件但输出相同,怎么样?那么我重复一下…*WinForms DataGridView不是为呈现嵌套记录而设计的。*…至少在默认情况下不是这样。您可能需要查看其他为您执行此操作的控件—可能是DevEx控件。如果我已经回答了你发布的问题,那么你应该把它标记为答案。其他任何问题都应作为另一个问题发布。;)您在嵌套记录上是正确的。它不能解决我的问题,但它给了我方向。非常感谢。