GridView を作成するコードがあります。列以外は正常に表示されSenderDetailsます。このための項目テンプレートを作成する必要があります。MessageおよびDateDataFields は、呼び出されたクラスから取得さChatれ、グリッドに適切に表示されます。ただしSenderDetails、chat クラスの別のクラスから呼び出されます。
public class Chat : BaseResultSet
{
public string Message { get; set; }
public DateTime? SentDate { get; set; }
public ChatUserDetails SenderDetails { get; set; }
}
ChatUserDetailsクラスは次のとおりです。
public class ChatUserDetails : BaseDisplaySet
{
public string UserName { get; set; }
public string CompanyName { get; set; }
public bool Connected { get; set; }
}
したがって、ユーザー名を表示する代わりにbaseClasses.Chat.ChatUserDetails、SenderDetails列に表示されます。
に UserName を表示する必要がありますBuildChatsGrid()。GridView コード:
public static GridView BuildChatsGrid()
{
GridView NewDg = new GridView();
NewDg.Columns.Add(new BoundField { DataField = "Message", HeaderText = "Note" });
NewDg.Columns.Add(new BoundField { DataField = "SenderDetails", HeaderText = "Entered By" }); //need item template
NewDg.Columns.Add(new BoundField { DataField = "SentDate", HeaderText = "Date", DataFormatString = "{0:dd/MM/yyyy}" });
}
では、アイテム テンプレートまたは templatefield を追加して呼び出すにはどうすればよいSenderDetailsでしょうか。