私は現在、rubスクリプトを介してドロップダウンリスト内のアイテムの実行時の追加と削除を可能にするアプリを使用しています。Rubyはこんな感じ
SAFE = ;
return control if control.CyclesCount == 0;
control.Items.each{|item| control.Items.Remove(item) if item.Value.index('|').nil?};
return control;
コントロールはカスタムユーザーコントロールであり、そのアイテムはListItemCollctionです。Rubyコードを正しく取得するために単体テストを実行していて、問題が発生しています。私が渡しているListItemColletionは次のようになります。
var lic = new ListItemCOllection {
new ListItem {Text = "Item2", Value = "8"},
new ListItem {Text = "Item1", Value = "1"},
new ListItem {Text = "Item3", Value = "3|1"},
new ListItem {Text = "Item4", Value = "4"},
new ListItem {Text = "Item5", Value = "5|2"},
new ListItem {Text = "Item6", Value = "6"}
}
パイプを含む2つのアイテムを残す代わりに、このコードは常にアイテムコレクションに3つのアイテムを残すように見えます。3は、アイテムを入れた順序によって異なります(この順序では、Item1、Item3、Item5が残ります)。これにより、削除が台無しになっていると思います。また、コレクションのコピーを取り、それをループして、元のコレクションから削除して、繰り返し処理していたコレクションから削除しないようにしました。私はRubyに関係のある初心者なので、気楽にやってください...しかし、いくつかのアドバイスを使うことができます。
ありがとう