私はFlipView
バインディングに大きな問題を抱えています。私は各アイテムに をFlipView
持っています。TextBox
にテキストを入力してTextBox
から次の項目に移動すると、TextBox.Text
値が空になります。次もそうです。しかし、4 番目の項目 ( Index=3
) には、入力したテキストが表示されますIndex=0
。これは引き続き 5 番目と 6 番目の項目には表示されませんが、7 番目の項目に再び表示されます ( Index=6
)。
したがって、 にTestIndex=0
と入力すると、4 番目と 7 番目のスライド (インデックス 3 と 6) にTestが表示されます。これは永遠に続く可能性があります。TextBox
問題をさらに複雑にするのは、最後に入力されたテキストに続き、それを 3 の倍数に表示することです。したがって、2 番目の項目 ( Index=1
) に移動してTest2と入力すると、 と に表示されIndex=4
ますIndex=7
。
複数のプロジェクトでこれを試しましたが、結果は同じです。試用できる別のコンピューターがありません。結果は、シミュレーター、ローカル マシン、リモート マシンで実行しても同じです。
外観は次のとおりです。
私にとって、再現するのは本当に簡単です。BasicPage を追加してから、グリッド内のそのページに次を追加します。
<FlipView Grid.Column="1" Grid.Row="1" Margin="100,0,50,0" x:Name="TabFlipView">
<FlipView.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Vertical">
<TextBox Width="400" Height="100" VerticalContentAlignment="Bottom" />
<TextBlock Text="{Binding}"/>
</StackPanel>
</DataTemplate>
</FlipView.ItemTemplate>
</FlipView>
でLoadState
、次を追加します。
Dim d As New ObservableCollection(Of String) From {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"}
TabFlipView.ItemsSource = d
次に、それを実行します。最初にTextBox
テキストを入力します。4 番目の項目にフリップします。最初の項目に入力したテキストはTextBox
、4 番目の項目にあります。
これがなんらかのマシン固有のものであり、再現できない場合、原因を見つけて排除するためにこれをトラブルシューティングするにはどうすればよいですか?