WPF: Einfachstes Items werden keine Produkte angezeigt
-
22-09-2019 - |
Frage
Ich kann nicht die einfachste Idee eines ItemControl
an der Arbeit. Ich will nur meine ItemsControl
mit einem Bündel von SomeItem
aufzufüllen.
Dies ist der Code-behind:
using System.Collections.ObjectModel;
using System.Windows;
namespace Hax
{
public partial class MainWindow : Window
{
public class SomeItem
{
public string Text { get; set; }
public SomeItem(string text)
{
Text = text;
}
}
public ObservableCollection<SomeItem> Participants
{ get { return m_Participants; } set { m_Participants = value; } }
private ObservableCollection<SomeItem> m_Participants
= new ObservableCollection<SomeItem>();
public MainWindow()
{
InitializeComponent();
Participants.Add(new SomeItem("Hej!"));
Participants.Add(new SomeItem("Tjenare"));
}
}
}
Dies ist der XAML:
<ItemsControl Name="itemsParticipants"
ItemsSource="{Binding Path=Participants}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Border BorderBrush="Red" BorderThickness="2">
<TextBlock Text="{Binding Text}" />
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
Was mache ich falsch?
Lösung
Stellen Sie sicher, dass Datacontext ist auf Relativeselbst irgendwo in Ihrem XAML. Wenn Sie mehr von Ihrem XAML posten könnte könnte es hilfreich sein.
<ItemsControl... DataContext="{Binding RelativeSource={RelativeSource Self}}" >
Andere Tipps
Die Itemssource verweist auf eine Eigenschaft MyParticipants genannt, während der Code sieht es Teilnehmer sein.
Überprüfen Sie die Debug-Ausgabe Ansicht, und Sie sollten Fehlermeldungen angezeigt werden.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow