Browse by Tags

All Tags » XamDataGrid
  • XamDataGrid 行のスタイルを変更する

    XamDataGrid では、デフォルトで選択行やアクティブ行、ホバー行など各種状態に対して青色を基調とした配色が行われています。これら行のスタイルを状況に応じて変更したいという状況はよくあります。今回は行のスタイルを状態毎に個別に変更する方法をご紹介します。   実装方法 XamDataGrid の行のスタイルは DataRecordPresenter クラスで設定することができます。XamDataGrid の各要素の構成は「xamDataGrid について」を参照下さい。 DataRecordPresenter に対するスタイルを作成します。Setter の Value には ComboBox で選択している色をバインドしています。実装の詳細は サンプル ...
    Posted to Yuki Mita (Weblog) by ymita on February 1, 2017
  • XamDataGrid 多段明細行

    XamDataGrid ではデータを横方向に連続して表示する以外にも、データを多段表示することもできます。 データを多段で表示できると、横幅が限られた画面幅に各レコードを収めることも可能ですし、データを俯瞰しやすくなります。   実装方法 FieldLayoutSettings にある AutoArrangeCells プロパティに “Never” を指定し、グリッドのフィールドが自動的に1段で整列する動作を無効化します。 <igDP:XamDataGrid x:Name=''xamDataGrid1'' DataSource=''{Binding People}''> ...
    Posted to Yuki Mita (Weblog) by ymita on January 10, 2017
  • XamDataGrid と XamBarcode を使ったレポートの作成

    XamDataGrid ではグリッドの内容を印刷する機能を提供しています。XamDataGrid の印刷は専用のメソッドを呼び出すことで簡単に実現することができます。今回は XamDataGrid のセルに XamBarcode(バーコードコントロール)を埋め込んで、商品リストを作ってみます。 XamDataGrid に XamBarcode を埋め込む部分は、以前にご紹介した XamDataGrid の TemplateField 機能を利用します。TemplateField 機能については下記をご覧ください。 XamDataGrid セルに任意のコントロールを埋め込む(テンプレートフィールド)  ...
    Posted to Yuki Mita (Weblog) by ymita on January 6, 2017
  • XamDataGrid 列の表示順序を取得

    XamDataGrid の列の表示順序を取得する方法をご紹介します。 XamDataGrid ではアプリケーション実行時に列の位置を左右で入れ替えたり、多段に組み替えることができます。 実行時の列の表示順序を取得するには、Field の ActualPosition.Column プロパティを利用します。 private void button_Click(object sender, RoutedEventArgs e) { FieldCollection fields = xamDataGrid1.FieldLayouts[0].Fields; for (int index = 0; index < fields.Count; index++) ...
    Posted to Yuki Mita (Weblog) by ymita on December 11, 2016
  • XamDataGrid セルのスタイルを状態に応じて変更

    XamDataGrid のセルのスタイルを、行の状態に応じて変更してみます。 XamDataGrid の提供する CellBinding 機能を利用することで簡潔に実装することができます。 Title 列の CellBindings コレクションに、セルの背景色(CellValuePresenter.Foreground)と ViewModel の ForegroundColor プロパティをバインドします。 <igDP:XamDataGrid DataSource=''{Binding Tasks}'' Grid.Row=''1''> <igDP:XamDataGrid.FieldLayouts> ...
    Posted to Yuki Mita (Weblog) by ymita on December 5, 2016
  • XamDataGrid セルに任意のコントロールを埋め込む(テンプレートフィールド)

    グリッドでの編集機能を考えたときに、エンドユーザーがどの項目を編集対象で、どの項目は表示対象であるかを表現することは操作感の向上につながります。ここでは XamDataGrid のテンプレートフィールドを利用して、エンドユーザーが見た目でどの項目を編集できるのかを表現してみます。   テンプレートフィールドを使わない場合 どの項目を編集できるかはマウス操作やキーボード操作が発生するまで見分けがつきません。   テンプレートフィールドを使った場合 「商品名」、「在庫」、「発注数」列が編集できることが所見で分かるようになりました。   ではここからテンプレートフィールドの実装を行っていきます。   テンプレートフィールドの定義 ...
    Posted to Yuki Mita (Weblog) by ymita on December 1, 2016
  • XamDataGrid Field に ViewModel のデータをバインドする

    XamDataGrid の列に ViewModel のデータをバインドしてみましょう。例えば、ViewModel 側に編集可否を制御するフラグデータを保持しておき、フラグの状態に応じて列単位のセル編集可否を制御するシナリオを考えてみます。   ViewModel のプロパティ 編集可否を制御するフラグ、AllowTitleEdit プロパティ(デフォルト値 true)と AllowDueEdit プロパティ(デフォルト値 false)を用意します。 class MainViewModel : NotificationObject { ... private bool _allowTitleEdit; public bool ...
    Posted to Yuki Mita (Weblog) by ymita on December 1, 2016
  • XamDataGrid エクセルライクなセルの直接編集(IME 入力)

    XamDataGrid ではエクセルライクなセルの直接編集(IME 入力)をサポートしています。 FieldSettings 配下の IsAutoEditModeEnabled プロパティを True にすることでこの機能が有効になります。XamDataGrid ではデフォルトの動作として、セルクリック時に編集状態に入るようになっています。セルの直接編集ではクリック時にセルを選択するよう振る舞ってほしいので、CellClickAction プロパティに SelectCell を設定します。 XAML での実装   <igDP:XamDataGrid DataSource=''{Binding Tasks}''> ... ...
    Posted to Yuki Mita (Weblog) by ymita on November 30, 2016
  • XamDataGrid レコードのドラッグアンドドロップ

    XamDataGrid レコードのドラッグアンドドロップを実装してみましょう。XamDataGrid 単体ではドラッグアンドドロップの機能ありませんが、 Infragistics WPF に含まれる Infragistics Drag and Drop Framework を組み合わせることで実現することができます。 XamDataGrid のレコードは DataRecordPresenter として描画されており、ドラッグアンドドロップ機能を DataRecordPresenter に割り当てていきます。 Snoop を使って XamDataGrid を覗いてみます。DataRecordPresenter はここです。 実装の手順 ...
    Posted to Yuki Mita (Weblog) by ymita on November 28, 2016
  • XamDataGrid FieldChooser に特定列を表示しない方法

    XamDataGrid では列の表示/非表示を切り替えることのできる、FieldChooser 機能を提供しています。 こんな見た目です。左側に表示されている小さなウィンドウが FieldChooser です。FieldChooser 上でチェックを切り替えると XamDataGrid の列表示も同期して切り替わります。   デフォルトでは全ての列を表示/非表示切り替えができるのですが、特定の列は非表示にされないようにしたいこともあります。このような時には、非表示にされたくない列のプロパティ変更を行うことで、FieldChooser から除外することができます。 例えば、ID 列を FieldChooser から除外するには FieldSettings の ...
    Posted to Yuki Mita (Weblog) by ymita on November 22, 2016
  • XamDataGrid チェックボックスの変更通知タイミング

    XamDataGrid では、バインドデータへの値変更通知は編集を終える(セルエディタから抜ける)タイミングで発生致します。テキスト編集では直感的な動作ですが、場合によっては編集内容を即時バインドデータへ反映したい状況があります。 例えば、bool 値のデータをバインドすると、XamDataGrid がデータタイプに応じて自動的にチェックボックス列を表示します。このチェックボックスにチェックを入れる/外すタイミングでバインドデータへ即時に変更通知をしたいとします。 XamDataGrid のデフォルトの挙動では、チェックボックスからフォーカスが抜けるまで変更通知が行われませんが、DataItemUpdateTrigger プロパティに OnCellValueChange ...
    Posted to Yuki Mita (Weblog) by ymita on November 17, 2016
  • XamDataGrid 列をコードビハインドで明示的に生成する

    XamDataGrid の列をコードビハインドで生成する例をご紹介します。データソースには DataTable を利用しています。 XamDataGrid の定義(XAML) 表示する列は動的に変わることを想定し、XAML 側での定義は行っていません。XamDataGrid ではバインドデータから自動的にデータ型に応じた列を生成するようになっています。ここではバインドするデータのうち、表示しないフィールドもあるため AutoGenerateFields に False を指定し、列の自動生成を無効化します。 <igWPF:XamDataGrid DataSource=''{Binding}'' ...
    Posted to Yuki Mita (Weblog) by ymita on September 20, 2016
  • XamDataGrid 複数行表示・複数行入力

    XamDataGrid で折り返し表示と複数行入力の設定方法をご紹介します。 XamDataGrid では編集時に表示されるエディタとして、XamTextEditor や XamNumericEditor などの弊社エディタコントロールを利用しております。今回の例では string を扱うセルの折り返し表示と複数行の入力ができるようにしますので、string 列に対応する XamTextEditor へスタイリングを行うことになります。 実装方法 XamDataGrid の編集エディタには、Field.Settings.EditorStyle からスタイル設定を行うことができます。折り返し表示では、TextWrapping プロパティに Wrap ...
    Posted to Yuki Mita (Weblog) by ymita on September 16, 2016
  • xamDataGrid と xamDataChart で簡易 BI アプリケーションを作る

    先日の記事では xamDataGrid にテンプレート列を作成する方法を紹介致しました。この記事で利用した xamDataGrid に、xamDataChart を加えて簡易な BI アプリケーションを作ってみます。 xamDataChart の定義 <ig:XamDataChart Name=''xamDataChart1'' Title=''Personal Score''> <ig:XamDataChart.Axes> <ig:CategoryXAxis x:Name=''xmXAxis'' ItemsSource=''{Binding Path=., ...
    Posted to Yuki Mita (Weblog) by ymita on August 14, 2014
  • [WPF] XamDataGrid: Filterをカスタマイズしよう!

    XamDataGridにはビルトインのフィルター機能があり、簡単なプロパティ設定で、入力式のフィルタからエクセルライクなものまで様々なフィルタ機能を利用することができます。   ビルトインのフィルタでは以下左の図で ”(カスタム)” という項目を選択するとカスタムフィルター専用のダイアログ(以下右の図)が表示され、指定列に対してカスタムな絞り込み条件を追加していくことができます。今回はこのビルトインのカスタムフィルタダイアログを独自に作成した範囲指定専用のフィルタダイアログに置き換えてみたいと思います。 まずはじめに、Window内にXamDataGridを配置し、フィルタ機能を有効 ( AllowRecordFiltering = True ) ...
    Posted to Satoru Yamaguchi - 山口 慧 (Weblog) by Satoru Yamaguchi on November 22, 2013
  • SilverlightとWindows Embedded

    Microsoftは先週、Windows Embedded CE 6.0 R3の開発が完了したと発表しました。私がこの新しいWindows Embedded CE 6.0 R3に感動したこと、それはSilverlightの機能が組み込まれているということです。 Embeddedデバイス用のSilverlightアプリケーションの作成が可能になったのは本当にすばらしいことだと思います。 個人的にはiPodライクなインターフェースを持つデバイスが発売されるのを心待ちにしています。でも、私が本当に必要なUIは家にある冷蔵庫のタイムラインです。  ...
    Posted to デビッド・クーニング (Weblog) by David Keuning on September 28, 2009
  • NetAdvantage for WPF 2009 Volume1 日本語版 その5 – WPF Reporting

    これまでの記事 NetAdvantage for WPF 2009 Volume1 日本語版 その1 - 概要 NetAdvantage for WPF 2009 Volume1 日本語版 その2 – xamMonthCalendar NetAdvantage for WPF 2009 Volume1 日本語版 その3 – xamOutlookBar NetAdvantage for WPF 2009 Volume1 日本語版 その4 – xamTabControl     今回は、NetAdvantage for WPF 2009 Volume1 ...
    Posted to Tatsuya Yamada's blog (Weblog) by Tatsuya Yamada on April 16, 2009
  • マイクロソフトのVisual Studio 2008のテクニカルセミナー

    Wow!昨日開催されたのVS2008Launchにマイクロソフト様よりご招待をいただいたことに大変感謝をしています。昨日のイベントは12月にリリース予定のVS2008のマスコミへの発表会でした。(VS2008の英語版は先週RTMしました。)インフラジスティックスはマイクロソフト様からこのイベントへの参加の打診をいただきました。幸いにもVS2008の優れた点を上げることはとても簡単です。最高の開発環境ツールといっても過言ではないでしょう。  個人的にはデザイナーと開発者がアプリケーション開発上で協力し合えるということは喜ばしいことだと思っています。もう見苦しいアプリケーションはうんざりなのです。グラフィックデザイナーと共同して、アプリケーションの見栄えをもっとよくしましょう ...
    Posted to デビッド・クーニング (Weblog) by David Keuning on November 29, 2007
Powered by Community Server (Commercial Edition), by Telligent Systems