このチュートリアルでは、UnboundColumnFetch イベントを使用して、1つの列に2つのフィールド( FirstName と LastName )を一緒に表示する方法を学びます。また、SQL 文を使用して、データベース内の2つのテーブルを結合する方法を学びます。このチュートリアルでセットアップしたプロジェクトは、チュートリアル 7〜12 でも使用します。.
以下の手順を実行します。
SELECT Customers.FirstName, Customers.LastName, Customers.CustType, Contacts.ContactType, Contacts.Callback, Contacts.ContactDate, Contacts.UserCode, Customers.UserCode AS Expr1 FROM Contacts INNER JOIN Customers ON Contacts.UserCode = Customers.UserCodeに変更します。Visual Basic コードの書き方
| Visual Basic |
コードのコピー
|
|---|---|
Dim dtCopy As New DataTable |
|
C# コードの書き方
| C# |
コードのコピー
|
|---|---|
DataTable dtCopy = new DataTable; |
|
Visual Basic コードの書き方
| Visual Basic |
コードのコピー
|
|---|---|
Me.ContactsTableAdapter.Fill(Me.DsContacts.Contacts) dtCopy = Me.DsContacts.Tables(0).Copy() |
|
C# コードの書き方
| C# |
コードのコピー
|
|---|---|
this.ContactsTableAdapter.Fill(this.DsContacts.Contacts); dtCopy = this.DsContacts.Tables(0).Copy(); |
|
Visual Basic コードの書き方
| Visual Basic |
コードのコピー
|
|---|---|
Private Sub C1TrueDBGrid1_UnboundColumnFetch(ByVal sender As System.Object, ByVal e As C1.Win.C1TrueDBGrid.UnboundColumnFetchEventArgs) Handles C1TrueDBGrid1.UnboundColumnFetch
If e.Column.Caption = "Name" AndAlso e.Row < dtCopy.Rows.Count Then
e.Value = Me.C1TrueDBGrid1(e.Row, "FirstName").ToString + " " + Me.C1TrueDBGrid1(e.Row, "LastName").ToString
End If
End Sub
|
|
C# コードの書き方
| C# |
コードのコピー
|
|---|---|
private void c1TrueDBGrid1_UnboundColumnFetch(object sender, C1.Win.C1TrueDBGrid.UnboundColumnFetchEventArgs e)
{
if(e.Column.Caption == "Name" && e.Row < dtCopy.Rows.Count)
{
e.Value = this.c1TrueDBGrid1[e.Row, "FirstName"].ToString()+ " " + this.c1TrueDBGrid1[e.Row, "LastName"].ToString();
}
}
|
|
アプリケーションを実行すると、次のように表示されます。
これでチュートリアル 6 は終了です。