sur WPF Je construis ce code Je veux montrer sur DataGrid la somme de "Desc" pour chaque "PID"Retour IGrouping de anonymous IEnumerable à présent sur DataGrid
public class Event
{
public int PID { get; set; }
public int Desc { get; set; }
}
private List<Event> data;
public MainWindow()
{
InitializeComponent();
data = new List<Event>()
{
new Event() { PID = 1, Desc=2 },
new Event() { PID = 1, Desc=3 },
new Event() { PID = 2, Desc=4 },
new Event() { PID = 2, Desc=5 },
new Event() { PID = 3, Desc=6 }
};
var result =
from d in data
group d.Desc by d.PID into pg
select new { ID = pg.Key, SUM = pg.Sum() };
datagrid.ItemsSource = result;
}
Et le XAML est
<DataGrid Name="datagrid" AutoGenerateColumns="False" IsReadOnly="True">
<DataGrid.Columns>
<DataGridTextColumn Header="id" Binding="{Binding ID}" Width="*"/>
<DataGridTextColumn Header="Name" Binding="{Binding SUM}" Width="*"/>
</DataGrid.Columns>
</DataGrid>
qui fonctionnent bien! mais ce n'est pas bon,
Ce que je veux faire est de retourner ce "var résultat" de la fonction et de la liaison comme je l'ai fait à DataGrid Comment puis-je faire cela? Ceci est à partir de IEnumerable<IGrouping<int,???>>
sur ??? il ya un type anonyme ....
alors comment puis-je retourner cela de la fonction et de la liaison comme je l'ai fait sur DataGrid?
Merci!
Vous pouvez simplement retourner 'IEnumerable' si cette méthode sera utilisée pour lier la liste de _things_. 'private IEnumerable GetData()'. Depuis [ItemsSource] (https://msdn.microsoft.com/en-us/library/system.windows.controls.itemscontrol.itemssource (v = vs.110) .aspx) la propriété accepte 'IEnumerable' cela devrait aller. – Michael