子类的内容,我有以下类获取从对象
public enum Category { foo, foo1, foo2 }
public class Event
{
public DateTime Timestamp { get; set; } = DateTime.Now;
public string GameTime { get; set; }
public string Content { get; set; }
public Person Author { get; set; }
public Category Category { get; set; }
}
和
public class MemberEvent : Event
{
public Member Person { get; set; }
}
的对象是正确创建的,但如果我想打电话给“人”,这是不显示我的。如果我有var match
,我可以打电话给例如match[0].Timestamp
但不是match[0].Person
。 Event
对象存储在List
中,因此也是索引。我觉得我错过了一些简单的东西。
UPDATE:用于创建对象
var match = SessionController.Instance.Current;
DataTable dt = dataGrid.ItemsSource as DataTable;
foreach (System.Data.DataRow item in dt.Rows)
{
var memberFoo = new MemberEvent();
memberFoo.Category = Category.Warning;
memberFoo.Time = item["Time"].ToString();
var person = new Person();
person.FirstName = item["FirstName"].ToString();
person.LastName = item["LastName"].ToString();
var passport = new Passport();
passport.Active = true;
passport.PassNumber = item["Pass"].ToString();
passport.Player = person;
memberFoo.Person = passport;
match.Match.Events.Add(memberFoo);
}
SessionController.Instance.Current = match;
是名单'Event'?如果列表被创建为'List',那么将不可能找到'Person'属性,因为它不是'MemberEvent'。 –
你能发布你创建对象的实际代码吗?这将大大帮助。 –
@EtienneFaucher是它创建为'List' –
Hadda