【问题标题】:wpf listview binding to multiple sourceswpf listview 绑定到多个源
【发布时间】:2013-12-19 13:40:19
【问题描述】:
 <ListView x:Name="lvPayload" Grid.Row="1" ItemsSource="{Binding Payload}" HorizontalAlignment="Center" VerticalAlignment="Center">
                                <ListView.ItemTemplate>
                                    <DataTemplate>
                                        <TextBox Text="{Binding Value, StringFormat=0x{0:x2}, Mode=OneWay, Converter={StaticResource hexConverter}}" FontSize="15" Margin="2,1,2,1" MinWidth="25" MinHeight="20" VerticalAlignment="Center" HorizontalAlignment="Center"/>
                                    </DataTemplate>
                                </ListView.ItemTemplate>
                                <ListView.ItemsPanel>
                                    <ItemsPanelTemplate>
                                        <WrapPanel Orientation="Horizontal" VerticalAlignment="Center"></WrapPanel>
                                    </ItemsPanelTemplate>
                                </ListView.ItemsPanel>
                            </ListView>

我在 TextBox.Text 属性上设置了 OneWay 绑定模式。很明显,后面的收藏是不会更新的。但无论如何,我没有无缘无故地将它设置为文本框。我仍然想做一些改变,我不希望它们反映在原始集合中,而是反映在其他地方。我不知道我是否可以做到这一点,有人可以给我一个提示吗?在最终修改之后,如果我遍历列表的项目,我将从原始集合中取回值,那些未修改的值,我只需要新值。

【问题讨论】:

    标签: c# wpf data-binding


    【解决方案1】:

    您将不得不为此创建自己的自定义绑定(您自己的类继承自 Binding 类并覆盖 set 操作)

    这本身就是一个相当大的话题,您的实施将根据您对设定目标的要求而有所不同,但这是开始的地方。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-07-27
      • 2011-05-25
      • 2011-01-14
      • 2017-09-29
      • 2011-01-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多