Xamarin Forms a Content Page を使用して構築しています。このコンテンツ ページには、タイトルとピッカーがあります。ユーザーがピッカーから項目を選択するたびに (回答に回答するなど)、回答が保存され、タイトルの変更とピッカー項目も保存されます。
問題は、理解できない「インデックスからの配列」例外が頻繁に発生することです。私のコードは次のようなものです:
public FormContentPage ()
{
//create picker
//create title
Init(CurrentQuestion);
}
public void Init(Question)
{
pick.SelectedIndexChanged -= Next;
pick.SelectedIndex = -1;
pick.Items.Clear ();
foreach (var c in current.Choices)
pick.Items.Add (c);
pick.SelectedIndexChanged += Next;
}
void Next()
{
ContentSave();
if (ValidateField(FormData.Current))
Init(NextQuestion);
}
Add 中または Clear 中に配列のインデックス例外が発生します。これは、私が本当に理解していないことに依存します。
内部では、選択したアイテムを-1に強制しても、ピッカーの選択したアイテムがまだ古いものであることがわかります..
誰か私に何かヒントはありますか?
ありがとう