我认为我已经设置好了 WPF 中简单的双向数据绑定,但列表框(目标)在集合更改时没有更新。
我正在以编程方式设置 ListBox 的 ItemsSource:
lstVariable_Selected.ItemsSource = m_VariableList;
而且ListBox的声明如下:
<ListBox Margin="5" Name="lstVariable_Selected">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderBrush="Gray" BorderThickness="1" Margin="0">
<TextBlock FontSize="25" Text="{Binding Path=Name}" />
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
当我最初设置ItemsSource时,ListBox(此时不可见)会设置其项。但是,如果我查看ListBox,则更新似乎在那一点上停止。然后,我可以从m_VariableList集合中删除一个项目,它不会从ListBox中消失。同样,如果我添加一个项目,它也不会出现。
怎么回事?