zoukankan      html  css  js  c++  java
  • windows 8 MSDN Examples 中一个奇怪的问题

    http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.media.animation.repositionthemetransition.aspx

     1 <Button Content="Remove Rectangle" Click="RemoveButton_Click"/>
     2 
     3 <ItemsControl Grid.Row="1" x:Name="rectangleItems">
     4     <ItemsControl.ItemContainerTransitions>
     5         <TransitionCollection>
     6             
     7             <!-- Without this, there would be no animation when items 
     8                  are removed. -->
     9             <RepositionThemeTransition/>
    10         </TransitionCollection>
    11     </ItemsControl.ItemContainerTransitions>
    12     <ItemsControl.ItemsPanel>
    13         <ItemsPanelTemplate>
    14             <WrapGrid Height="400"/>
    15         </ItemsPanelTemplate>
    16     </ItemsControl.ItemsPanel>
    17     
    18     <!-- All these rectangles are just to demonstrate how the items
    19          in the grid re-flow into position when one of the child items
    20          are removed. -->
    21     <ItemsControl.Items>
    22         <Rectangle Fill="Red" Width="100" Height="100" Margin="10"/>
    23         <Rectangle Fill="Red" Width="100" Height="100" Margin="10"/>
    24         <Rectangle Fill="Red" Width="100" Height="100" Margin="10"/>
    25         <Rectangle Fill="Red" Width="100" Height="100" Margin="10"/>
    26         <Rectangle Fill="Red" Width="100" Height="100" Margin="10"/>
    27         <Rectangle Fill="Red" Width="100" Height="100" Margin="10"/>
    28         <Rectangle Fill="Red" Width="100" Height="100" Margin="10"/>
    29         <Rectangle Fill="Red" Width="100" Height="100" Margin="10"/>
    30         <Rectangle Fill="Red" Width="100" Height="100" Margin="10"/>
    31     </ItemsControl.Items>
    32 </ItemsControl>
    1 private void RemoveButton_Click(object sender, RoutedEventArgs e)
    2 {
    3     if (rectangleItems.Items.Count > 0)
    4         rectangleItems.Items.RemoveAt(0);
    5 }

    每点击一次按钮,将删除一个红色的方块。但当方块删除的只剩一个时,再点击按钮删除时会报错“Value does not fall within the expected range.”
    很奇怪的提示,明明还有一个,怎么就删不掉呢?难道rectangleItems.Items不能为空吗?试验一下,调用rectangleItems.Items.Clear()方法删除rectangleItems.Items中的所有项,反应正常;又试了下,在XAML中<ItemsControl.Items>中的方块直接都删除,任然可以运行。

    不知有没有人也遇到了类似的问题,这到底是什么原因呢?

  • 相关阅读:
    ASP.NET : 自定义HttpModule的时候要注意的问题
    ASP.NET : Win7 及 IIS 7中对于处理程序映射
    .NET : 一定不要忘记关闭DataReader对象
    IE 8 Accelerator加速器开发介绍{转载}
    .NET : CLR Profiler的使用
    .NET : 在实现WCF的双工服务时可能遇到的问题
    Silverlight学习资源
    .NET : 如何查看值类型的大小
    .NET: 如何通过AppDomain动态加载插件程序
    Web.config中的特殊字符
  • 原文地址:https://www.cnblogs.com/chengyujia/p/2569709.html
Copyright © 2011-2022 走看看