GUIの作成
では、さっそくアプリケーションを作成していきましょう。といっても、プロジェクトの設定機能はすべてC1GanttViewコントロールに組み込まれています。ですから、このアプリケーションでは「終了」ボタンを設けて、アプリケーション終了時に作成したプロジェクトデータをXMLファイルに保存する処理と、アプリケーション起動時にXMLファイルを読み込む処理を作成するだけです。
XMLファイルは、アプリケーションと同じフォルダに「gantt_data.xml」というファイル名で保存します。
フォームのレイアウト
フォームには、C1GanttViewコントロールを配置し、Dockプロパティを「Top」に、「StartDate」プロパティを「2013/08/01」に設定します。そして、「FixedBackColor」プロパティを「255,224,192」にします。これで、行列のヘッダーセルがオレンジ色に変わります。
続いて、Buttonコントロールを1つ配置し、Clickイベントハンドラを作成します。
フォームは、LoadとFormClosedイベントハンドラを作成します。
イベントハンドラの処理
XMLファイルを読み出してC1GanttViewコントロールに組み込むには、C1GanttViewコントロールのLoadXmlメソッドを、XMLファイルに書き出すにはSaveXmlメソッドを使用します。いずれも、引数はファイル名です。
ここでは、XMLファイルはアプリケーションと同じフォルダに「gantt_data.xml」というファイル名で保存します。アプリケーションを初めて起動したときは、XMLファイルは存在しないので、FileクラスのExistsメソッドでファイルの有無を確認し、ファイルがある場合のみ読み込むようにします。
また、XMLファイルに書き出す場合は、フォームクローズ時に無条件に保存するようにしています。
以上ででき上がりです。
Public Class Form1
Private fname As String = Application.StartupPath + "\gantt_data.xml"
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
If System.IO.File.Exists(fname) = True Then
C1GanttView1.LoadXml(fname)
End If
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Me.Close()
End Sub
Private Sub Form1_FormClosed(sender As System.Object, e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed
C1GanttView1.SaveXml(fname)
End Sub
End Class
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
private string fname = Application.StartupPath + "/gantt_data.xml";
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
if(System.IO.File.Exists(fname) == true)
{
c1GanttView1.LoadXml(fname);
}
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
c1GanttView1.SaveXml(fname);
}
}
}

