<bdo id='btft2'></bdo><ul id='btft2'></ul>
<i id='btft2'><tr id='btft2'><dt id='btft2'><q id='btft2'><span id='btft2'><b id='btft2'><form id='btft2'><ins id='btft2'></ins><ul id='btft2'></ul><sub id='btft2'></sub></form><legend id='btft2'></legend><bdo id='btft2'><pre id='btft2'><center id='btft2'></center></pre></bdo></b><th id='btft2'></th></span></q></dt></tr></i><div id='btft2'><tfoot id='btft2'></tfoot><dl id='btft2'><fieldset id='btft2'></fieldset></dl></div>

<small id='btft2'></small><noframes id='btft2'>

    1. <tfoot id='btft2'></tfoot>
      <legend id='btft2'><style id='btft2'><dir id='btft2'><q id='btft2'></q></dir></style></legend>

        WPF ListBox 未使用 ItemsSource 更新

        WPF ListBox not updating with the ItemsSource(WPF ListBox 未使用 ItemsSource 更新)
            • <bdo id='rE647'></bdo><ul id='rE647'></ul>

              <small id='rE647'></small><noframes id='rE647'>

                    <tbody id='rE647'></tbody>
                1. <i id='rE647'><tr id='rE647'><dt id='rE647'><q id='rE647'><span id='rE647'><b id='rE647'><form id='rE647'><ins id='rE647'></ins><ul id='rE647'></ul><sub id='rE647'></sub></form><legend id='rE647'></legend><bdo id='rE647'><pre id='rE647'><center id='rE647'></center></pre></bdo></b><th id='rE647'></th></span></q></dt></tr></i><div id='rE647'><tfoot id='rE647'></tfoot><dl id='rE647'><fieldset id='rE647'></fieldset></dl></div>
                  <legend id='rE647'><style id='rE647'><dir id='rE647'><q id='rE647'></q></dir></style></legend><tfoot id='rE647'></tfoot>

                  本文介绍了WPF ListBox 未使用 ItemsSource 更新的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我认为在 WPF 设置中应该是简单的双向数据绑定,但列表框(目标)没有随着集合的变化而更新.

                  I have what I believe should be simple two-way databinding in WPF setup, but the listbox (target) is not updating as the collection changes.

                  我正在以编程方式设置 ListBox 的 ItemsSource:

                  I'm setting this ItemsSource of the ListBox programmatically:

                  lstVariable_Selected.ItemsSource = m_VariableList;
                  

                  ListBox声明如下:

                  And the ListBox is declared as follows:

                  <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,更新似乎会停止.

                  When I initially set the ItemsSource, the ListBox (which is not visible at the time) gets its items set. However, if I go view the ListBox, updates seem to stop at that point.

                  然后我可以从 m_VariableList 集合中删除一个项目,并且它不会从 ListBox 中消失.同样,如果我添加一个,它不会出现.

                  I can then remove an item from the m_VariableList collection, and it does not disappear from the ListBox. Likewise, if I add one, it doesn't appear.

                  什么给了?

                  推荐答案

                  你的 m_VariableList 是否实现了 INotifyCollectionChanged?如果它不是 ObservableCollection,那么对其内容的更改将不会自动反映在 UI 中.

                  Is your m_VariableList implementing INotifyCollectionChanged? If it's not an ObservableCollection, then changes to it's contents will not automatically be reflected in the UI.

                  这篇关于WPF ListBox 未使用 ItemsSource 更新的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  Populate ListBox with a IEnumrable on another thread (winforms)(在另一个线程(winforms)上使用 IEnumrable 填充 ListBox)
                  listbox selected item give me quot; System.Data.DataRowViewquot; , C# winforms(列表框选择的项目给我quot;System.Data.DataRowView, C# Winforms)
                  Cannot remove items from ListBox(无法从列表框中删除项目)
                  Preventing ListBox scrolling to top when updated(更新时防止列表框滚动到顶部)
                  Drag and drop from list to canvas on windows phone with MVVM(使用 MVVM 在 Windows 手机上从列表拖放到画布)
                  Deselection on a WPF listbox with extended selection mode(具有扩展选择模式的 WPF 列表框上的取消选择)
                2. <tfoot id='VtENQ'></tfoot>
                3. <i id='VtENQ'><tr id='VtENQ'><dt id='VtENQ'><q id='VtENQ'><span id='VtENQ'><b id='VtENQ'><form id='VtENQ'><ins id='VtENQ'></ins><ul id='VtENQ'></ul><sub id='VtENQ'></sub></form><legend id='VtENQ'></legend><bdo id='VtENQ'><pre id='VtENQ'><center id='VtENQ'></center></pre></bdo></b><th id='VtENQ'></th></span></q></dt></tr></i><div id='VtENQ'><tfoot id='VtENQ'></tfoot><dl id='VtENQ'><fieldset id='VtENQ'></fieldset></dl></div>

                    <tbody id='VtENQ'></tbody>
                  • <legend id='VtENQ'><style id='VtENQ'><dir id='VtENQ'><q id='VtENQ'></q></dir></style></legend>
                  • <small id='VtENQ'></small><noframes id='VtENQ'>

                      • <bdo id='VtENQ'></bdo><ul id='VtENQ'></ul>