これはおそらく非常に単純な問題ですが、私には理解できません。フォームのコンストラクターに次の小さなコード行があります。
public FrmMain()
{
InitializeComponent();
gdcSVN.DataSource = _presenter.GetAllFiles();
}
public List<IVersionedFile> GetAllFiles()
{
List<IVersionedFile> all = new List<IVersionedFile>();
all.AddRange(_addedFiles);
all.AddRange(_removedFiles);
all.AddRange(_updatedFiles);
return all;
}
gdcSVN
DevExpress GridControl です。GetAllFiles
を返しますList<IVersionedFile>
。これは次のように定義されています。
public interface IUserFile
{
string Name { get; }
string Path { get; }
}
public interface IVersionedFile : IUserFile
{
long Revision { get; }
SvnStatus Status { get; }
}
class VersionedFile : IVersionedFile
{
#region constructors
protected VersionedFile(string name, string path, long revision, SvnStatus status)
{
Name = name;
Path = path;
Revision = revision;
Status = status;
}
public VersionedFile(string name)
: this(name, String.Empty, -1, SvnStatus.Zero)
{}
public VersionedFile(string name, string path)
: this(name, path, -1, SvnStatus.Zero)
{}
public VersionedFile(string name, string path, long revision)
: this(name, path, revision, SvnStatus.Zero)
{}
#endregion
#region IVersionedFile members
public string Name { get; set; }
public string Path { get; set; }
public long Revision { get; set; }
public SvnStatus Status { get; set; }
#endregion
}
フォームを実行すると、GridControl には と の 2 つの列しかありませRevision
んStatus
。IUserFile インターフェイスから継承されたプロパティをグリッドに表示するにはどうすればよいですか?
編集して明確にする。2 つのインターフェイス間の 4 つのプロパティすべてをグリッドに表示したいと考えています。Name
、Path
、Revision
、およびStatus
。現在、 の最後の 2 つだけが表示されIVersionedFile
ます。