今日は、作業の結果を確認します。Xamarin.Formsの最初のコンポーネントはデータグリッドです。 このコンポーネントは、 ここからダウンロードして無料で使用できます 。 それとともに、GridControlの基本的な機能を示すアプリケーションを受け取ります。
そのため、カットの下に、グリッドが現時点で実行できるすべての概要と、小さな「はじめに」があります。
コンポーネントについて
予想通り、グリッドは、さまざまなタイプのソースから取得できる表形式データを表示および編集するためのコンポーネントです。 迅速かつ効果的なデータ分析のために提供される機能を見てみましょう。
データ管理
- まず、これらはすべて、表形式のデータを操作するために必要な標準機能です-データのフィルタリング、並べ替え(同時に複数の列による並べ替えを含む)、およびグループ化。
- グループおよびグリッド全体の要約情報( summary )の計算。 最も一般的に使用される5つの関数( Sum、Average、Max、Min、およびCount )はデフォルトですでに使用可能ですが、計算に独自のアルゴリズムを使用することもできます。
- 指定したすべてのグリッド設定を保存して(たとえば、xmlファイルに)、その後すぐにグリッドにすばやく復元できます。
- 行を追加、編集、削除します。
- XLS、XLSX、またはCSV形式で適用されたすべての設定(並べ替え、グループ化、フィルター、計算された合計など)を考慮して、グリッドからデータをエクスポートする機能。
スピーカー
- テキスト、数値、日付、画像、リストの値( TextColumn、NumberColumn、DateColumn、ImageColumn、PickerColumn )のさまざまなタイプのデータにいくつかの標準列タイプを実装しました。 たとえば、ユーザーがセルの編集を開始すると、文字列データまたは日付を編集しているかどうかに応じて、テキストまたはカレンダーを入力するための画面キーボードがタブレットまたはスマートフォンに自動的に表示されます。
ところで、列ごとに、値の表示形式を設定できます。 たとえば、数値データの小数、金銭、利子、およびその他の形式、および日付と時刻の特別な形式が利用可能です。
- 適切な標準の列タイプがない場合-問題ではありませんが、テンプレートに指定された列( TemplateColumn )をグリッドに追加できます。
- グリッド内のすべての列がデータソースのフィールドに対応している必要はありません-グリッドにはいわゆる非バインド列が含まれている可能性があります -他の列のデータに基づいて特定の式を使用して値が計算される列
- 列を再度非表示および表示し、適切なジェスチャーで列の幅を変更できます。
書式設定
- 条件付き書式設定は、値に基づいてセルを選択的または自動的に書式設定する機能です。 たとえば、この機能を使用すると、重要な情報や例外値を強調表示したり、傾向などを視覚化したりできます。 グリッドは、フォントの色やセルの背景の変更から、カラースケール、アイコンセット、ヒストグラムの使用まで、多くの条件付き書式設定オプションをサポートしています。
- グリッドには明るいテーマと暗いテーマがあります。
モバイルチップ
- そしてもちろん、 プルトゥリフレッシュ (データソースとの同期と、指を上から下に動かすことによるグリッドコンテンツの更新)やロードモア (データソースからより多くのレコードをロードする機能)ユーザーがグリッドの最後の行までスクロールしたとき)。
- iPhoneおよびiPadユーザーになじみのある別の機能は、 スワイプボタンです。 グリッド線に沿って左から右へ、またはその逆-右から左へ指をスライドするときにユーザーが使用できるボタンを追加することで、グリッドの標準機能を簡単に拡張できます。
上記の機能のほとんどは、デフォルトでエンドユーザーが利用できます。 たとえば、組み込みのコンテキストメニュー(それぞれ、必要に応じて簡単に構成できます。たとえば、新しいアイテムを追加したり、既存のアイテムを削除したりできます)や直感的なジェスチャです。 必要に応じて、利用可能な機能をユーザーが簡単にアクセスできないようにすることもできます。
そして、開発者が自由に使える-API、完全な行動の自由を与えます。
アプリケーション作成
それでは、グリッドコンポーネントをアプリケーションに追加して、作業を開始する方法を見てみましょう。
そのため、まずXamarin Studioで新しいXamarin.Forms Portableアプリケーションを作成します(一般に、Xamarin.FormsアプリケーションはVisual Studioでも開発できますが、この例ではOS XでXamarin Studioを使用します)。
次に、XamarinコンポーネントストアからDevExpressグリッドコンポーネントをダウンロードし、AndroidおよびiOSプロジェクトに追加します。 これは非常に簡単に行われます-Xamarin Studioで。
コンポーネントリンクを追加すると、必要なすべての「プラットフォーム」アセンブリがAndroidおよびiOSプロジェクトに自動的に追加されることに注意してください。
ただし、共通アセンブリDevExpress.Mobile.Grid.v15.1.dllおよびDevExpress.Mobile.Core.v15.1.dllへのリンクは、PCLプロジェクトに手動で追加する必要があります。 Components / devexpress-grid-15.1.5.0 / lib / pcl /ディレクトリにあります。これは、現在のアプリケーションのディレクトリに自動的に作成されます。
Visual Studioで作業していて、アプリケーションにWindows Phoneプロジェクトが含まれている場合は、 DevExpress.Mobile.Grid.WinPhone.v15.1.dllおよびDevExpress.Mobile.Core.WinPhone.v15アセンブリへのリンクも手動で追加する必要があります。 1.dll
グリッドを初期化するには、 MainActivity.csファイルとAppDelegate.csファイル (それぞれAndroidプロジェクトとiOSプロジェクト)に次の行を追加します。
DevExpress.Mobile.Forms.Init();
DevExpress.Mobile.DataGrid名前空間への接続を忘れずに、グリッドのインスタンスを作成できるようになりました。
グリッドのデータソースは、 ItemsSourceプロパティを介して設定されます。
デフォルトでは、グリッドはデータソースのすべてのフィールドの列を作成します。 グリッド内の列のセットまたは順序は、 GridControl.Columnsプロパティを使用して手動で設定することにより変更できます。
XAMLマークアップを使用してこれを行う方法の例を次に示します。
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="HelloGrid.MainPage" xmlns:dxg="clr-namespace:DevExpress.Mobile.DataGrid;assembly=DevExpress.Mobile.Grid.v15.1"> <dxg:GridControl x:Name="grid" ItemsSource="{Binding Orders}" SortMode="Multiple" AutoFilterPanelVisibility="true"> <dxg:GridControl.Columns> <dxg:TextColumn FieldName="Product.Name" Caption="Product" Width="170" /> <dxg:NumberColumn FieldName="Product.UnitPrice" Caption="Price" DisplayFormat="C0"/> <dxg:NumberColumn FieldName="Quantity"/> <dxg:NumberColumn FieldName="Total" UnboundType="Integer" UnboundExpression="[Quantity] * [Product.UnitPrice]" IsReadOnly="True" DisplayFormat="C0"/> <dxg:DateColumn FieldName="Date" DisplayFormat="d"/> <dxg:SwitchColumn FieldName="Shipped" /> </dxg:GridControl.Columns> <dxg:GridControl.TotalSummaries> <dxg:GridColumnSummary FieldName="Total" Type="Sum" DisplayFormat= "Total: {0:C0}"/> </dxg:GridControl.TotalSummaries> </dxg:GridControl> </ContentPage>
上記のコードでは、グリッドの列を定義することに加えて、次のことも行います。
- 複数の列で同時にソートする機能を有効にし、
- 列でデータをフィルタリングするパネルを追加し、
- 合計サマリーを設定して、[合計]列の金額を計算します。
さて、アプリケーションを起動すると、指定されたソースからのデータで満たされたそのようなグリッドを取得します。
GridControlについての小さなプロモーションビデオをここで見ることができます。
おわりに
行くぞ 現在、当社の製品ラインには、Xamarinプラットフォーム用のグリッドコンポーネントもあります。 Xamarin.Formsテクノロジを使用したモバイルアプリケーションの開発を検討している場合は、必ずグリッドを試してください。簡単で、無料で、プロジェクトに簡単に統合できます。 私たちはあなたの質問に答え、この記事へのコメントであなたの希望を聞いて喜んでいるでしょう。