将Item添加到对象列表后的列表框UI更新

时间:2015-08-21 10:50:46

标签: c# xaml binding listbox inotifycollectionchanged

我得到了这个清单:

  List<BoardNote> offlinelist = new List<BoardNote>();

它绑定到我的列表框“boardlist”。 现在我想要在添加新的Boardnote后每次更新Listbox的UI。 我已经知道我应该使用“INotifyCollectionChanged”,但我过度训练了。 这是“boardlist”的代码:

 <ListBox x:Name="BoardList" ItemsSource="{Binding offlinelist}" > //I need to add binding mode two way and property changed idk
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <Grid>
                        <StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
                            <TextBox IsReadOnly="True" ScrollViewer.VerticalScrollBarVisibility="Visible" Text="{Binding text}" TextWrapping="Wrap" Foreground="DarkBlue"></TextBox>
                            <AppBarButton Visibility="{Binding visibility}" Icon="Globe" Click="OpenInBrowser" x:Name="Link"></AppBarButton>
                            <AppBarButton Icon="Copy" Click="Copy"></AppBarButton>
                            <AppBarButton Icon="Delete" Click="Delete"></AppBarButton>
                        </StackPanel>
                    </Grid>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

2 个答案:

答案 0 :(得分:0)

您可以使用ObservalbleList而不是List。它已经为你实现了INotifyCollectionChanged。

答案 1 :(得分:0)

您需要在ViewModel中实现ObservableCollection才能获得更新。