Hallo Zusammen,
ich habe ein Beispielprogramm geschrieben, welches mein Problem darstellt.
Wie kann ich mir die Liste Data am einfachsten in Wpf darstellen? Ich habe noch nicht ganz verstanden wie das Datenbinden funktioniert.
Meine xaml sieht wie folgt aus:
<Window x:Class="WpfApp_howToUseTask.MainWindow"
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"
xmlns:local="clr-namespace:WpfApp_howToUseTask"
mc:Ignorable="d"
Title="MainWindow" Height="350" Width="525">
<Grid Margin="5" RenderTransformOrigin="0.666,0.499">
<Grid x:Name="MeasurementPlate" Background="Black" Height="200" Margin="419,19,24,50" VerticalAlignment="Center" Width="64" HorizontalAlignment="Center"/>
<ListView Name="listView1" Margin="0,0,284,0" SelectionChanged="listView1_SelectionChanged">
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn Header="Data" Width="Auto" DisplayMemberBinding="{Binding Path=Data}">
</GridViewColumn>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
</Grid>
</Window>
namespace WpfApp_howToUseTask
{
/// <summary>
/// Interaktionslogik für MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
Transfer tr=new Transfer();
public MainWindow()
{
InitializeComponent();
ObservableCollection<int> Data = new ObservableCollection<int>();
Data=tr.GetData(Data);
listView1.ItemsSource = tr.GetData(Data);
}
private void listView1_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
}
}
public class Transfer
{
public ObservableCollection<int> GetData(ObservableCollection<int>data)
{
for (int i=0 ;i < 2; i++)
{
for (int j = 0; j < 3; j++)
{
int d = i + j;
data.Add(d);
}
}
return data;
}
}
}
Bitte nimm Code Tags und poste nur den Relevanten Code. [Hinweis] Wie poste ich richtig?
Hallo Kleinstein11,
[Artikel] MVVM und DataBinding
mach dir eine Klasse, die ein Property anbietet. Dieses Property ist vom Typ ObservableCollection<T>. die Klasse setzt du als DataContext.
Dann kannst du auf das Property zugreifen via
ItemsSource="{Binding MySuperDuperList}"
Gruss
Coffeebean
Microsoft MVP // Me // Blog // GitHub // @Egghead // All my talks // Speakerdeck