列表视图中的第二项无法正确呈现第一次

福克斯曼

所以我有一个问题,我有一个列表视图,当我添加第一个项目时,它会渲染,但是第二个项目不会渲染,但是列表视图所在的面板就像它一样在增长。然后,如果添加了第三项,则第二个和第三个渲染器都将添加。之后,添加的每个新项目都会立即渲染。此问题仅与第二项有关。

XAML:

<ListView Name="DownloadList" Background="WhiteSmoke" PreviewMouseLeftButtonUp="DownloadList_PreviewMouseLeftButtonUp" Width="649" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
    <ListView.View>                  
        <GridView>
            <GridViewColumn Width="140" Header="Name" DisplayMemberBinding="{Binding Name}"/>
            <GridViewColumn Width="80" Header="Status" DisplayMemberBinding="{Binding Status}"/>
            <GridViewColumn Width="60" Header="Size" DisplayMemberBinding="{Binding FormattedSize}"/>
            <GridViewColumn Width="70" Header="Speed" DisplayMemberBinding="{Binding FormattedSpeed}"/>
            <GridViewColumn Width="170" Header="Progress">
                <GridViewColumn.CellTemplate>
                    <DataTemplate>
                            <Grid>
                                <ProgressBar Name ="dlPrgrs" Height ="20" Width="150" Maximum="100" Value="{Binding FormattedProgress}" Foreground="{Binding ForColor}"/>
                                <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="{Binding ElementName=dlPrgrs, Path=Value, StringFormat={}{0:0}%}"/>
                            </Grid>
                        </DataTemplate>
                </GridViewColumn.CellTemplate>
            </GridViewColumn>
            <GridViewColumn Width="65" Header="Time Left" DisplayMemberBinding="{Binding FormattedTime}"/>
            <GridViewColumn Width="60" Header="Peers" DisplayMemberBinding="{Binding Peers}"/>
         </GridView>
     </ListView.View>
</ListView>   

背后的代码

列表创建和绑定:

List<FileDownload> wpfDownloads = new List<FileDownload>();
DownloadList.ItemsSource = wpfDownloads;

添加新项目:

wpfDownloads.Add(download);

谢谢

升压

只需使用ObservableCollection<FileDownload>代替即可List<FileDownload>原因ObservableCollection<T>已实现INotifyCollectionChanged接口。

正如MSDN所说:

INotifyCollectionChanged 通知侦听器动态更改,例如何时添加和删除项目或清除整个列表。

有关您的UI的简单建议:

我建议您创建可调整大小的XAML,而不是静态的。我的意思是不好:

<Grid>        
   <ListView HorizontalAlignment="Left" Margin="10">
       ...The code omitted for the brevity...
   </ListView>
   <Button Margin="50" Name="btn_add" Click="btn_add_Click" Content="Add new item"/>
</Grid>

但是,这样做更好,并且此UI(XAML)可调整大小:

<Grid>
    <Grid.RowDefinitions>
      <RowDefinition Height="5*">
      </RowDefinition>
    </Grid.RowDefinitions>  
    <ListView HorizontalAlignment="Left">
       ...The code omitted for the brevity...
    </ListView>
    <Button Grid.Row="1" Name="btn_add" Click="btn_add_Click" Content="Add new item"/>
</Grid>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

视图第一次旋转,但不是第二次

来自分类Dev

第一次在IE中打开时,GWT代码无法正确呈现

来自分类Dev

第一次在IE中打开时,GWT代码无法正确呈现

来自分类Dev

代码第一次编译时给出正确的数字,第二次给出随机数

来自分类Dev

使用空手道发送第二次请求(nb次)作为第一次请求返回的nb项

来自分类Dev

从第一个数组中删除除第一次出现的第二个数组项之外的所有项

来自分类Dev

第一次和第二次之间的速度差

来自分类Dev

函数的第一次调用与第二次调用的性能

来自分类Dev

在第二次执行时暂停函数的第一次执行(Python)

来自分类Dev

.on更改功能是第一次而不是第二次起作用?

来自分类Dev

preventDefault第一次使用,但第二次不起作用

来自分类Dev

.NET第一次成功后进行第二次Ajax调用

来自分类Dev

第一次和第二次之间的速度差

来自分类Dev

浮动div的高度在第一次是零,但在第二次是可以

来自分类Dev

毕加索不缓存第一次加载,但第二次没问题

来自分类Dev

第一次登录无效,但第二次登录有效

来自分类Dev

查询正在第二次尝试但不是第一次尝试

来自分类Dev

从第一次出现到第二次解析日志

来自分类Dev

如何第一次插入并第二次更新

来自分类Dev

FCM Token 第一次不生成,第二次生成

来自分类Dev

AdsConnection 在第二次连接时抛出 EntryPointNotFoundException 但第一次工作

来自分类Dev

tx_news:详细信息视图总是呈现第一次查看的文章

来自分类Dev

第一次返回未定义,第二次返回正确的结果,我该如何解决?

来自分类Dev

Flutter:第一次在第二页上传入的参数值为null

来自分类Dev

在 R 中,从第二列的第一次出现更改数据框列

来自分类Dev

使用Enumeration <E>的hasMoreElements()和nextElement()方法打印列表,第一次成功,第二次失败后添加一些元素

来自分类Dev

第一次在回收站视图中如何查找创建的物料?

来自分类Dev

片段内的按钮不是在滚动视图中第一次触发吗?

来自分类Dev

VCR在第二次尝试运行测试时无法处理请求(第一次尝试通过)

Related 相关文章

  1. 1

    视图第一次旋转,但不是第二次

  2. 2

    第一次在IE中打开时,GWT代码无法正确呈现

  3. 3

    第一次在IE中打开时,GWT代码无法正确呈现

  4. 4

    代码第一次编译时给出正确的数字,第二次给出随机数

  5. 5

    使用空手道发送第二次请求(nb次)作为第一次请求返回的nb项

  6. 6

    从第一个数组中删除除第一次出现的第二个数组项之外的所有项

  7. 7

    第一次和第二次之间的速度差

  8. 8

    函数的第一次调用与第二次调用的性能

  9. 9

    在第二次执行时暂停函数的第一次执行(Python)

  10. 10

    .on更改功能是第一次而不是第二次起作用?

  11. 11

    preventDefault第一次使用,但第二次不起作用

  12. 12

    .NET第一次成功后进行第二次Ajax调用

  13. 13

    第一次和第二次之间的速度差

  14. 14

    浮动div的高度在第一次是零,但在第二次是可以

  15. 15

    毕加索不缓存第一次加载,但第二次没问题

  16. 16

    第一次登录无效,但第二次登录有效

  17. 17

    查询正在第二次尝试但不是第一次尝试

  18. 18

    从第一次出现到第二次解析日志

  19. 19

    如何第一次插入并第二次更新

  20. 20

    FCM Token 第一次不生成,第二次生成

  21. 21

    AdsConnection 在第二次连接时抛出 EntryPointNotFoundException 但第一次工作

  22. 22

    tx_news:详细信息视图总是呈现第一次查看的文章

  23. 23

    第一次返回未定义,第二次返回正确的结果,我该如何解决?

  24. 24

    Flutter:第一次在第二页上传入的参数值为null

  25. 25

    在 R 中,从第二列的第一次出现更改数据框列

  26. 26

    使用Enumeration <E>的hasMoreElements()和nextElement()方法打印列表,第一次成功,第二次失败后添加一些元素

  27. 27

    第一次在回收站视图中如何查找创建的物料?

  28. 28

    片段内的按钮不是在滚动视图中第一次触发吗?

  29. 29

    VCR在第二次尝试运行测试时无法处理请求(第一次尝试通过)

热门标签

归档