Xamarin.Forms.Picker UWP 中的内容重复
Xamarin.Forms.Picker contents are duplicated in UWP
Xamarin.Forms.Picker控件仅当我们用手指触摸选择器时才复制内容。它与鼠标指针完美配合。
所以它创建了一个无限滚动,其中有重复的项目。
如果您有任何 Windows 触摸设备,您可能会遇到此问题。我认为这是一个长期存在的问题,但我找不到任何解决方案。
如果您有解决问题的想法,请给我建议?
我通过将 ComboBox ItemPanel 从 CarouselControl 更改为 StackPanel 找到了解决此问题的方法。默认情况下,ComboBox 使用 CarouselControl,它在触摸模式下可视化循环行为。因此,通过将 ComboBox ItemPanel 的模板更改为 StackPanel 解决了我的问题。
把下面的代码放在App.xaml
<Application.Resources>
<Style TargetType="ComboBox">
<Style.Setters>
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<StackPanel Orientation="Vertical"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</Style.Setters>
</Style>
</Application.Resources>
Xamarin.Forms.Picker控件仅当我们用手指触摸选择器时才复制内容。它与鼠标指针完美配合。
所以它创建了一个无限滚动,其中有重复的项目。
如果您有任何 Windows 触摸设备,您可能会遇到此问题。我认为这是一个长期存在的问题,但我找不到任何解决方案。
如果您有解决问题的想法,请给我建议?
我通过将 ComboBox ItemPanel 从 CarouselControl 更改为 StackPanel 找到了解决此问题的方法。默认情况下,ComboBox 使用 CarouselControl,它在触摸模式下可视化循环行为。因此,通过将 ComboBox ItemPanel 的模板更改为 StackPanel 解决了我的问题。
把下面的代码放在App.xaml
<Application.Resources>
<Style TargetType="ComboBox">
<Style.Setters>
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<StackPanel Orientation="Vertical"/>
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</Style.Setters>
</Style>
</Application.Resources>