Hi,
wollte ne OberservableCollection an eine Listview binden, das sieht dann so aus:
XAML
Die HistoryElement Klasse hat zu Testzwecken bisher nur ein Feld mit Text="Test" drinne.
Habe das Binding überprüft indem ich einfach Items rauslösche, das funktioniert wie gewünscht. Problem dabei ist allerdings nur das kein Text angezeigt wird ?
wollte ne OberservableCollection an eine Listview binden, das sieht dann so aus:
XML-Quellcode
- <ListView Name="History" Grid.Row="1" Grid.Column="1" ItemsSource="{Binding History}" Grid.ColumnSpan="1" Grid.RowSpan="1">
- <ListView.View>
- <GridView ColumnHeaderContainerStyle="{StaticResource myHeaderStyle}">
- <GridViewColumn Header="Name" Width="200">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <TextBlock Style="{DynamicResource MaterialDesignTitleTextBlock}" Text="{Binding Text}" ></TextBlock>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>
- <GridViewColumn>
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <Button Style="{DynamicResource MaterialDesignToolButton}">
- <materialDesign:PackIcon Kind="Alert"></materialDesign:PackIcon>
- </Button>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>
- </GridView>
- </ListView.View>
- </ListView>
C#-Quellcode
- class DataModell : INotifyPropertyChanged {
- private static DataModell modell = null;
- public event PropertyChangedEventHandler PropertyChanged;
- private void NotifyPropertyChanged(string info) {
- if (PropertyChanged != null) {
- PropertyChanged(this, new PropertyChangedEventArgs(info));
- }
- }
- public static DataModell Instance {
- get {
- if (modell == null) {
- modell = new DataModell();
- }
- return modell;
- }
- }
- private static ObservableCollection<HistoryElement> _History= new ObservableCollection<HistoryElement>();
- public ObservableCollection<ClipboardContent> History{
- get {
- _History.CollectionChanged += CollectionChangedHandler;
- return _History;
- }
- set {
- _History= value;
- NotifyPropertyChanged("History");
- }
- }
- private void CollectionChangedHandler(object sender, NotifyCollectionChangedEventArgs e) {
- NotifyPropertyChanged("History");
- }
- }
Die HistoryElement Klasse hat zu Testzwecken bisher nur ein Feld mit Text="Test" drinne.
Habe das Binding überprüft indem ich einfach Items rauslösche, das funktioniert wie gewünscht. Problem dabei ist allerdings nur das kein Text angezeigt wird ?
faxe1008