ここではCSVファイルからデータを読み込み、DataGridViewに表示します。 SQLを使った方が本格的で良いのかもしれませんが、冗長ですし、いろいろな参考書にも具体例が載っているので今回はお手軽な方法を取る事にしました。

今回は次のようなCSVファイル(05_form_databinding.csv)をあらかじめ作成しておきました。
05_form_databinding.csv
name,age,address yasu,20,AizuWakamatsu abe,25,Yokohama
"05_form_databinding.csv"ファイルを読み込み、DataGridViewに表示するアプリケーションを作成します。
05_form_databinding.ipy
# coding=Shift_JIS
# IronPython Example:  DataGridView
# - 
# @author: YasuhiroABE <yasu@yasundial.org>
# @see: DataGridView Class Example from MSDN API Reference
#
import clr
clr.AddReferenceByPartialName("System.Windows.Forms")
clr.AddReferenceByPartialName("System.Drawing")
clr.AddReferenceByPartialName("System.Data")
import System
from System.Windows.Forms import Form
from System.Windows.Forms import DataGridView
from System.Data import DataTable
from System.IO import StreamReader
from System.Drawing import Size
form = Form()
form.Size = Size(400,180)
form.Text = "Hello World!"
## 静的にファイル名を指定します
filename = "05_form_databinding.csv"
## setup DataTable object
dt = DataTable()
reader = StreamReader(filename)
cols = []
for c in reader.ReadLine().split(","):
  dt.Columns.Add(c, System.Type.GetType("System.String"))
  cols.append(c)
  
l = reader.ReadLine()
while(l != None):
  row = dt.NewRow()
  counter = 0
  for item in l.split(","):
    row[cols[counter]] = item
    counter += 1
  dt.Rows.Add(row)
  l = reader.ReadLine()
reader.Close()
## setup DataGridView object
datagridview = DataGridView()
datagridview.DataSource = dt
datagridview.Size = form.Size
form.Controls.Add(datagridview)
System.Windows.Forms.Application.Run(form)
## end ##    コードをみれば単純にカンマで区切っただけで、いわゆるRFC4180なCSVファイルの処理ができるわけではありません。 残念ながらIronPythonにはCPythonでは使えるcsv.pyが附属しないため、IronPythonで使えるCSVファイルの取り扱いについては、また後で試すつもりです。
Created: 2010-03-11, Last modified: 2010-03-19
      
      www.yasundial.org by 
      Yasuhiro ABE
      is licensed under a Creative Commons Attribution 2.1 Japan License.
      Permissions beyond the scope of this license may be available at http://www.yasundial.org/info/license.html.