Scheduler for WPF
手順 2:データソースへの C1Scheduler の連結

C1Scheduler コントロールを Blend プロジェクトに追加し、データソースに連結できるようになりました。

Blend プロジェクトに新しいデータセットをリソースとして追加するには

  1. Microsoft Expression Blend 4 を開き、メニューから[ファイル]→[プロジェクト/ソリューションを開く]を選択して、Visual Studio 2010で作成したプロジェクト(.sln)を開きます。

  2. プロジェクト]パネルの Page1.xaml をダブルクリックしてページを開き、必要に応じて、[デザイン]タブをクリックしてデザインビューにアクセスします。

  3. C1Scheduler コントロールをページに追加します。Visual Studio 2010でプロジェクトを作成したときに C1.WPF.C1Schedule アセンブリへの参照を既に追加しているので、必要な作業は、[アセット]パネルから C1Scheduler を追加するだけです。

    • Blend の[ツール]パネルにある[アセット]ボタンをクリックします。

    • アセット]パネルで、[カテゴリ]タブをクリックします。

    • C1Scheduler を選択します。このコンポーネントは、[ツール]パネルの[アセット]ボタンの下に表示されます。

    • [ツール]パネルの[C1Scheduler]ボタンをダブルクリックして、ページに追加します。

  4. XAML]タブをクリックして XAML ビューに切り替えます。

  5. Page タグ内の名前空間のリストに次の XAML コードを追加して、CLR 名前空間を作成します。clr-namespace の値には、Visual Studio 2010プロジェクトの名前を使用します。

    XAML は、次のようになります。

    XAML
    コードのコピー
    <Page
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        x:Class="MYProjectName.Page1"
        Title="Page1"
        xmlns:c1sched="http://schemas.componentone.com/wpf/Schedule" x:Class=”WpfScheduleQuickStart.Page1”
       xmlns:local="clr-namespace:MYProjectName">
    
  6. プロジェクト]パネルの Page1.xaml を右クリックし、[起動]を選択します。これで、Page1 が最初のウィンドウに設定されます。

  7. プロジェクト]→[プロジェクトのビルド]を選択してプロジェクトを実行します。

  8. 引き続き XAML ビューで、上の XAML の直後に次の XAML を入力して、ScheduleDataSet をリソースとして追加します。

    XAML
    コードのコピー
    <Page.Resources>
        <local:ScheduleDataSet x:Key="dataSet" />
    </Page.Resources>
    

Scheduler for WPF データストレージにマップするには

  1. Blend プロジェクトで、[デザイン]タブをクリックして Page1.xaml のデザインビューに戻ります。

  2. プロジェクトの Page1.xaml の C1Scheduler コントロールを選択します。

  3. プロパティ]パネルの[Data]で、[DataStorage]省略符ボタンをクリックします。[Data Source settings]ダイアログボックスが表示されます。

     

  4. [DataSource] プロパティの隣にある [詳細オプション] ボタンをクリックし、[ローカルリソース]を選択し、[dataSet]をオンにします。このプロパティが ScheduleDataSet に設定されます。

  5. DataMember プロパティの隣に「Appointments」と入力します。C1SchedulerAppointments テーブルにマップされ、そのデータに基づいてスケジュールに値が挿入されます。

  6. 次に、プロパティと Appointments テーブルの対応するデータフィールドとのマッピングを設定します。各[Property Mappings]項目に次のテキストを入力します。

    ?
    プロパティ テキスト
    Body Body
    End End
    Location Location
    Start Start
    Subject Subject
    AppointmentProperties Properties
    IdMapping Id
    IndexMapping

  7. OK]をクリックして、[Data Source settings]ダイアログボックスを閉じます。データベースは Appointment Storageにマップされました。マップするための XAML コードは、次のようになります。

    XAML
    コードのコピー
    <c1:C1Scheduler HorizontalAlignment="Left" Height="400" VerticalAlignment="Top" Width="480">
                <c1sched:NestedPropertySetter PropertyName="DataStorage.AppointmentStorage.DataMember" Value="Appointments"/>
                <c1:NestedPropertySetter PropertyName="DataStorage.AppointmentStorage.DataSource" Value="{DynamicResource dataSet}"/>
                <c1:NestedPropertySetter PropertyName="DataStorage.AppointmentStorage.Mappings.Body.MappingName" Value="Body"/>
                <c1:NestedPropertySetter PropertyName="DataStorage.AppointmentStorage.Mappings.End.MappingName" Value="End"/>
                <c1:NestedPropertySetter PropertyName="DataStorage.AppointmentStorage.Mappings.Location.MappingName" Value="Location"/>
                <c1:NestedPropertySetter PropertyName="DataStorage.AppointmentStorage.Mappings.Start.MappingName" Value="Start"/>
                <c1:NestedPropertySetter PropertyName="DataStorage.AppointmentStorage.Mappings.Subject.MappingName" Value="Subject"/>
                <c1:NestedPropertySetter PropertyName="DataStorage.AppointmentStorage.Mappings.AppointmentProperties.MappingName" Value="Properties"/>
                <c1:NestedPropertySetter PropertyName="DataStorage.AppointmentStorage.Mappings.IdMapping.MappingName" Value="Id"/>
          <c1:C1Scheduler>
    

C1Scheduler をデータソースに連結することに成功しました。これでスケジュールをカスタマイズできます。