我應該只採取一些項目。過濾器等於DataGridView中的元素
Excel文件的模式如下:
<ConfigRegolatori>
<Id>6</Id>
<Address>92</Address>
<Category>90</Category>
<Mode>TC_K</Mode>
<Model>Z4TC</Model>
<Name>KT6</Name>
<ConfigRegolatori>
<Id>7</Id>
<Address>7</Address>
<Category>100</Category>
<Mode>TC_K</Mode>
<Model>M9_Servo</Model>
<Name>KT7</Name>
<ConfigRegolatori>
<Id>8</Id>
<Address>92</Address>
<Category>90</Category>
<Mode>TC_K</Mode>
<Model>Z4TC</Model>
<Name>KT10</Name>
的代碼部分如下
dtConfReg = new DataTable();
dtConfReg.ReadXml(Principale.strPathConfig + "\\ConfigRegulators.xml");
dtConfReg.TableName = "ConfigReg";
bsouReg = new BindingSource();
bsouReg.DataSource = dtConfReg;
dgvwConfigReg.DataSource = bsouReg;
因爲我有在地址字段中的值相同的多個行,我想獲得每個值都有一行。例如,我有92個地址標記的多個記錄,我只想提取一個。
PS:一個重要的信息是,我使用的框架2.0
感謝
爲什麼不在讀取xml之後,在設置'DataSource'並將沒有多個記錄的修改列表設置爲'DataContext'之前,不要這樣做? –
請嘗試以下操作:DataTable newTable = dtConfReg.AsEnumerable()。GroupBy(x => x.Field(「Address」))。Select(x => x.FirstOrDefault())。CopyToDataTable(); –
jdweng
在DataSource分配之後無法完成割縫,必須在分配到網格之前在Linq中過濾數據 –