J'ai fait pas mal de WPF il y a quelques années mais j'ai tout oublié. Supposons que je possède une classe d'entreprise simple, disons un poste de travail TFS.Liaison d'une classe business simple à un WPF UserControl
public class WorkItem
{
public WorkItem(string name, DateTime date)
{
Name = name;
Date = date;
}
public string Name { get; set; }
public DateTime Date { get; set; }
}
Ensuite, j'ai une liste de WorkItems, peut-être quelque chose comme ça.
class WiList : ObservableCollection<WorkItem>
{
public WiList() : base()
{
Add(new WorkItem("1", DateTime.Now));
Add(new WorkItem("2", DateTime.Now));
}
}
Ensuite, j'ai un UserControl qui représente un WorkItem, quelque chose comme ça.
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
x:Class="WrapPanelItemsControlTest.WorkItemControl"
x:Name="UserControl"
d:DesignWidth="640" d:DesignHeight="480" HorizontalAlignment="Left"
VerticalAlignment="Top" Width="72" Height="40">
<StackPanel x:Name="LayoutRoot">
<TextBlock x:Name="Name"/>
<TextBlock x:Name="Date"/>
</StackPanel>
La fenêtre principale contient un WrapPanel pour maintenir les UserControls. Ma question est, comment puis-je créer un WrapPanel qui se lie à WiList et affiche les WorkItems? Je me souviens avoir fait quelque chose comme ça avant, mais pour la mort de moi, je ne me souviens pas comment (probablement quelque chose du blog de Bea Costa). Bien sûr, je ne peux pas trouver mon ancien code de test n'importe où et semble être expectoralement mauvais à googler pour des exemples.
Toute aide est appréciée.
Initialiser ItemsSource _de code-behind_ n'est pas une bonne pratique. Vous avez probablement voulu dire cela, mais cela peut ne pas être clair pour le P.S. +1 =) –
merci! bien sûr, j'ai laissé tomber ces mots, je vais me corriger – arconaut