このようなことが可能かどうか/どのように可能かを誰かが理解してくれることを願っています。
このシナリオでは、スプレッドシートや DB のようなグリッドをモデル化しようとしていると想像してください。ただし、各列のデータは 1 つのデータ型のみにすることができます。
例: 列 1 には整数のみを含めることができます。
次のような列構造をモデル化するジェネリック クラスを作成しました。
public class CollectionColumn<T>
{
private string _name;
private string _displayName;
private List<T> _dataItems = new List<T>();
public string Name {
get { return _name; }
set { _name = value; }
}
public string DisplayName {
get { return _displayName; }
set { _displayName = value; }
}
public List<T> Items {
get { return _dataItems; }
set { _dataItems = value; }
}
}
今私がやりたいことは、独自のプロパティを持つさまざまな列 (CollectionColumn、CollectionColumn などがある可能性があります) のコンテナーを用意することですが、列とデータにアクセスできる場所でそれを行う方法がわかりません。私がそれらのタイプを知らないとき、それらの中で。
これは .NET 2.0 プロジェクトなので、動的のようなものは機能しません。オブジェクトのリストでしょうか? インターフェイスでこれを行う方法があるかどうかもわかりません。
public class ColumnCollection
{
public int Id { get; set; }
public string ContainerName { get; set; }
private List<CollectionColumn<T>> _columns;
public List<CollectionColumn<T>> Columns {
get { return _columns; }
set { _columns = value; }
}
}
私ができるようにしたいのは、さまざまな CollectionColumn を ColumnCollection の Columns コレクションに追加して、さまざまな種類のデータを含む列を持つことができるようにすることです。
どんな助けでも大歓迎です。