Xamarin froms表单水平列表视图,带有按钮,可将日期向右、向左移动
Xamarin froms表单水平列表视图,带有按钮,可将日期向右、向左移动,xamarin,xamarin.forms,Xamarin,Xamarin.forms,这是我需要实现的结果。如果有人接触过类似的东西,请告诉我也许你可以使用CarouselView或ScrollView(水平),看看这篇文章 ,我认为您可以使用旋转木马获得最佳效果,但是,在这种情况下,两者都可以工作在ScrollView中使用BindableLayout的StackLayout可以满足您的需求 XAML代码: <ScrollView x:Name="calender" Orientation="Horizontal
这是我需要实现的结果。如果有人接触过类似的东西,请告诉我也许你可以使用CarouselView或ScrollView(水平),看看这篇文章
,我认为您可以使用旋转木马获得最佳效果,但是,在这种情况下,两者都可以工作在ScrollView中使用BindableLayout的StackLayout可以满足您的需求 XAML代码:
<ScrollView
x:Name="calender"
Orientation="Horizontal">
<StackLayout
BackgroundColor="Blue"
BindableLayout.ItemsSource="{Binding Dates}"
Orientation="Horizontal">
<BindableLayout.ItemTemplate>
<DataTemplate>
<Button
TextColor="White"
BackgroundColor="Blue"
Text="{Binding}"/>
</DataTemplate>
</BindableLayout.ItemTemplate>
</StackLayout>
</ScrollView>
按钮点击:
private void LeftButton_Clicked(object sender, EventArgs e)
{
if (calender.ScrollX > 200)
calender.ScrollToAsync(calender.ScrollX - 200, 0, true);
else
calender.ScrollToAsync(0, 0, true);
}
private void RightButton_Clicked(object sender, EventArgs e)
{
if (calender.ScrollX < calender.ContentSize.Width - calender.Width - 200)
calender.ScrollToAsync(calender.ScrollX + 200, 0, true);
else
calender.ScrollToAsync(calender.ContentSize.Width - calender.Width, 0, true);
}
private void LeftButton_单击(对象发送者,事件参数e)
{
如果(Calendar.ScrollX>200)
calender.ScrollToAsync(calender.ScrollX-200,0,true);
其他的
日历。滚动同步(0,0,真);
}
私有void RightButton_已单击(对象发送者,事件参数e)
{
if(calender.ScrollX
用户界面结果:
您只需将左右按钮放在按钮上,对吗?@SümeyyaTuğeArar是的,要滚动列表可能在将来,我还有一些问题,请等待,再次感谢。也许您知道如何将此按钮中的文本作为按钮中的commandparameter?您知道如何在按钮中放置更多值吗,就像我在问题中粘贴的这个屏幕上一样,或者使用这些值、数字、日期和这个彩色圆圈在一些可点击的框上执行相同的操作使用stacklayout或任何其他带有视图的布局,而不是按钮