Infragistics WPF XamDataGrid と Act-On をデータバインド

加藤龍彦
加藤龍彦
デジタルマーケティング
Infragistics WPF XamDataGrid と Act-On をデータバインドする方法



この記事では CData ADO.NET Provider for ActOn を使って、Infragistics WPF XamDataGrid に Act-On をデータバインドする方法を説明します。

完成イメージ

以下のように Infragistics WPF XamDataGrid でAct-On から取得したデータを表示するアプリケーションを作成します。

XamDataGrid

1. WPFプロジェクトの作成

まず、VisualStudioを立ち上げて、WPFアプリのプロジェクトを作成します。

XamDataGrid

今回はデータを柔軟に取り出せるように、CData ADO.NET ProviderにSQLを渡すためのTextBoxと実行用のボタンを配置しました。

XamDataGrid

この段階でのXAMLは以下のようになっています。


    
        
        
    

2. XamDataGrid の配置・設定

次に「XamDataGrid」を配置します。 Infragistics WPF UI コンポーネントをインストールしている場合、ツールボックスに以下のように表示されます。

XamDataGrid

これをデザイナー画面で以下のように配置しました。

XamDataGrid

併せて、任意の名称(xamDataGrid としました)、DataSource は{Binding} を指定し、フィルター機能を使えるように「Custom:FieldSettings」に「AllowRecordFiltering="true"」「AllowSummaries="True" 」を追加しました。

また、サンプルプログラムではデザインテーマの「Theme="Metro"」も設定しています。このあたりはお好みでどうぞ。



    
        
        

        
        
            
                
            
        

    


3. CData Act-On ADO.NET Provider への接続を構成

最後に CData Act-On ADO.NET Provider への接続部分を作成します。

まずは参照設定からCData Act-On ADO.NET Provider のライブラリである「System.Data.CData.ActOn.dll」を追加します。

その後、名前空間に「System.Data.CData.ActOn」を追加し

using System.Data.CData.ActOn;

ボタンをクリックした時にTextBoxからSQL文を取得し、Act-On からデータを取得する処理を記述します。この記述方法は以下のヘルプに記載されているものがほぼそのままです。

using System.Data;
using System.Data.CData.ActOn;
using System.Windows;

namespace CData.XamDataGrid.GropingListApp
{
    /// 
    /// MainWindow.xaml の相互作用ロジック
    /// 
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            sqlTextBox.Text = "SELECT * FROM Samples";
        }

        private void ExecuteButton_Click(object sender, RoutedEventArgs e)
        {
            string connectionString = "";

            using (var connection = new D365SalesConnection(connectionString))
            {
                var dataAdapter = new ActOnDataAdapter(
                sqlTextBox.Text, connection);

                var table = new DataTable();
                dataAdapter.Fill(table);

                this.DataContext = table.Rows;
            }
        }
    }
}

通常のWebAPIをそのまま実装した場合、自身でWebAPIリクエストの処理から認証部分、「XamDataGrid」渡すデータ構造の構成まで定義しなければいけませんが、これらコンポーネントの活用により省力化してアプリケーションを開発できます。

このように ActOn 内のデータを API を書くことなく XamDataGrid 上で処理することができるようになります。

サポートされるSQL についての詳細は、ヘルプドキュメントの「サポートされるSQL」をご覧ください。テーブルに関する情報は「データモデル」をご覧ください。

はじめる準備はできましたか?

Act-On Data Provider の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Act-On Icon Act-On ADO.NET Provider お問い合わせ

Act-On マーケティングオートメーションデータに簡単にデータ連携して.NET アプリケーションに Campaigns、Programs、Reports を統合!