Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# CollectionView项目显示垂直间距问题_C#_Xamarin_Observablecollection - Fatal编程技术网

C# CollectionView项目显示垂直间距问题

C# CollectionView项目显示垂直间距问题,c#,xamarin,observablecollection,C#,Xamarin,Observablecollection,最近,我更改了collectionview,将其VerticalItemSpacing属性设置为具有预设值,它似乎工作正常,但注意到当添加一些新元素时,它和倒数第二个元素之间的间距为零,直到我滚动视图。当我再次返回到最后一个元素时,它们之间出现了空格。这是一个已知的问题吗?有人知道解决办法吗 我的数据模板是内部带有BoxView的网格(用于模拟背景,因为帧看起来更昂贵),这是我的ItemsLayout属性: <CollectionView.ItemsLayout> <G

最近,我更改了collectionview,将其VerticalItemSpacing属性设置为具有预设值,它似乎工作正常,但注意到当添加一些新元素时,它和倒数第二个元素之间的间距为零,直到我滚动视图。当我再次返回到最后一个元素时,它们之间出现了空格。这是一个已知的问题吗?有人知道解决办法吗

我的数据模板是内部带有BoxView的网格(用于模拟背景,因为帧看起来更昂贵),这是我的ItemsLayout属性:

<CollectionView.ItemsLayout>
    <GridItemsLayout Orientation="Vertical" VerticalItemSpacing="3" />
</CollectionView.ItemsLayout>

此问题与您的
DataTemplate
名称
MapMsgSend
有关,请检查此行

  <BoxView Margin="-5,-5,-5,-1" Grid.Column="0" Grid.ColumnSpan="1" Grid.Row="0" Grid.RowSpan="3" CornerRadius="5" BackgroundColor="#dcf8c6" />

如果您将边距设置为“-5,-5,-1”,它将得到与此屏幕截图类似的结果

如果我将边距设置为
margin=“3”
,它的工作方式与下面的sceenshot类似


我在xamarin表单中测试它,如果我将项目添加到
CollectionView
中,它会正常工作。我的Xamarin forms nuget软件包是
4.6.0.726
,这是我正在运行的GIF@LeonLu MSFT该问题似乎只有在倒数第二个元素与屏幕匹配(水平)时才会出现。我有15个可能的数据模板,我注意到每次都会出现倒数第二个适合的屏幕。你能提供一个关于这个问题的演示吗?@LeonLu MSFT你可以在这里下载。你需要查看的文件是ChatPage.xaml和ChatPage.cs。您还将看到滚动是抖动的。实际上,主要的问题是滚动时的性能。因为这个原因,我改变了我的方法,现在我有这个间距问题。如果你也能给我一个建议,我将非常感激。@LeonLu MSFT我几乎忘了告诉你:这是一个非常简单的例子,所以你只能点击发送按钮,它将添加一个水平适合屏幕的新元素(你会看到它没有空间),但如果你滚动视图,它将显示空间。当应用程序启动时,请将所有内容滚动到底部,由于某些原因,自动滚动的代码与原始项目中的代码不一样,可能我删除了一些关键代码。谢谢你,Leon。你发现了问题所在。你认为使用框架来获得我想要的外观会更好吗?既然您已经阅读了代码,我也会问您是否有一些技巧可以避免我在滚动这几行内容时遇到的抖动。是的,我认为
Frame
是一种更好的抖动方式(如果您在消息中有图像和文本),我可以为此提出一个新问题吗?真烦人。提前感谢您的关注。是的,当然,如果您的应用程序有一些隐私,请打开一张免费的支持票。不,这是免费的。