我是一名C#新手,尝试开发Windows 10 UWP应用作为一项爱好项目。
主要浏览器部分的XAML代码:
<GridView x:Name="browserPane" ItemsSource="{x:Bind fileInCurrentFolderList,Mode=OneWay}" SelectionChanged="browserPane_SelectionChanged" Margin="0,48,0,0">
<GridView.ItemTemplate>
<DataTemplate x:DataType="classes:Item">
<StackPanel Margin="10">
<Image Height="268" Width="200" Source="{x:Bind Thumbnail}" x:Phase="1" Stretch="UniformToFill"></Image>
<TextBlock Width="200" Text="{x:Bind Caption}" TextWrapping="Wrap" TextTrimming="CharacterEllipsis" MaxLines="2"/>
</StackPanel>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
这个网格视图绑定到
public sealed partial class MainBrowser : Page
{
...
private ObservableCollection<Item> fileInCurrentFolderListUI = new ObservableCollection<Item>();
...
}
这个应用程序左侧有一个按钮列表。每个按钮都会调用一个方法,返回一个 ObservableCollection<Item>
。
问题是我需要做类似于:
foreach (Item file in ReturnObservableCollection)
{
fileInCurrentFolderList.Add(item);
}
而不是这样
fileInCurrentFolderList = ReturnObservableCollection;
为了能够触发UI中的更新。 我该如何更改这个?