[Xuni:FlexGrid] JSON形式で取得したデータをグリッド形式の一覧で表示する方法 (Xamarin.Forms)

文書番号 : 81892     文書種別 : 技術情報     登録日 : 2016/12/01     最終更新日 : 2016/12/01
文書を印刷する
対象製品
Xuni
詳細
FlexGridを利用するとExcelのようにデータを一覧表示できます。
表示するデータはListなどの形式で、ItemSourceプロパティに設定してください。

その表示するためのデータを取得する方法は多種多様ですが、インターネット上にWeb APIでJSON形式で提供されているデータを取得する場合、いくつかのコンポーネントを利用することで実現できます。
・Microsoft.Net.Http
・JSON.NET(Newsoft.json)
各コンポーネントはNuGetサーバーを利用してプロジェクトに追加します。

実際の処理は、REST APIの形で指定したデータ取得用のURLで、HTTP通信を行い文字列としてデータを取得します。
JSON形式で提供されたデータを元のデータ形式に戻し、決められたフォーマット保存するとデータとして利用可能です。

サンプルコード
C#(Xamarin.Forms)
// データを取得するメソッド
public async Task> AsyncGetWebAPIData()
{
    // 所定のフォーマット(ここでは AEDListModelクラス)でListを作成
    AEDList = new List();
    // HttpClientの作成 
    HttpClient httpClient = new HttpClient();
    // 非同期でAPIからデータを取得
    Task stringAsync = httpClient.GetStringAsync(AED_URL);
    string result = await stringAsync;
    // JSON形式のデータをデシリアライズ処理して復元
    AEDList = JsonConvert.DeserializeObject>(result);

    // 完成したList
    return AEDList;
}



このメソッドの戻り値であるListをFlexGridのItemSourceプロパティに設定すれば、Listに含まれるデータが一覧表示できます。

このサンプルが実際に動作するプロジェクトを解説を含めて技術記事として公開していますので、詳細はこちらを参照ください。

Xuni > 技術情報 > ComponentOne Information 
「Web APIで取得したオープンデータを一覧表示するXamarin.FormsアプリのUIを作成」
関連情報