t は基本的な質問かもしれません。しかし、数時間の調査の後、私はそれを理解できません。商品詳細ページがあります。スクロールビューが右下に達するたびに、別のグリッドを追加したいと考えています。現在、xaml に列を追加し、その可視性プロパティを切り替えることで、この目標を部分的に達成しました。
<Grid x:Name="body" Style="{StaticResource LayoutRootStyle}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid x:Name="dynamicGrid" Grid.Column="1" Grid.RowSpan="2" Visibility="Collapsed">
<Grid.RowDefinitions>
<RowDefinition Height="80"/>
<RowDefinition Height="360"/>
<RowDefinition Height="360"/>
</Grid.RowDefinitions>
<TextBlock .../>
<GridView .../>
<GridView .../>
</Grid>
そしてコードビハインドで
if (//Reach the right side)
{
if (related.Visibility == Visibility.Collapsed)
{
related.Visibility = Windows.UI.Xaml.Visibility.Visible;
}
}
if (// Move away from right border)
{
related.Visibility = Windows.UI.Xaml.Visibility.Collapsed;
}
それはある程度機能します。しかし、アニメーションはびくびくしています。場合によっては、スクロールビューアが最初に戻ることを拒否することさえあります。問題は、実行時にUIコントロールを追加/削除するときだと思います.scrollviewerはそれをうまく処理しません。
この機能を実現するためのより良い方法はあるのでしょうか? どんな提案でも大歓迎です。