配列を BindingList に変換する最も簡単で最速の方法は何ですか?
6577 次
4 に答える
10
BindingList
を取るコンストラクタを使用しますIList<T>
。
var binding = new BindingList<MyType>(myArray);
于 2011-02-27T17:55:32.700 に答える
3
あなたはコンストラクタを探しています:
var bl = new BindingList<YourClass>(arr);
于 2011-02-27T17:54:42.177 に答える
3
IList は読み取り専用になるため、BindingList(IList ..) コンストラクターを Array と共に使用する場合は注意してください。
したがって、BindingList に追加/削除しようとすると、NotSupportedException がスローされます。これは、コレクションが読み取り専用であるため、IList が機能を処理できないためです。
編集可能な BindingList を作成するには、IList コンストラクターを使用する前にリストに変換する必要があります。
配列が IList から構築される理由についての優れた説明は、追加の読み物としてここにあります: なぜ配列は IList を実装するのですか?
于 2014-04-01T15:21:12.090 に答える
1
foreach サイクルを試すことができます:
public void AppenFromArray(T[] aSource)
{
if (aSource == null) { return; }
foreach (T el in aSource)
{
this.Add(el);
}
}
于 2011-02-27T17:55:17.853 に答える