FAQ
A.ComboBoxItem を使わなくても、直接数値を設定することができます。 <Window x:Class="MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sys="clr-namespace:System;assembly=mscorlib" Title="MainWindow" Height="130" Width="250"> <Grid> </grid></window>
A.WPF の Window は ResizeMode プロパティを NoResize にすると最大化ボタン等が非表示になります。Window.OnStateCnanged メソッドをオーバーライドするか、HwndSource クラスにメッセージを処理するウィンドウプロシージャを登録します。本記事は、以下 …
A.DataRecord.IsFilteredOut プロパティを条件に、クエリで簡単に取得できます。 #2015/02/05 追記: IsFilteredOut の戻り値が Null許容型なので、今更ながら GetValueOrDefault メソッド使わなきゃ駄目なことに気づいた (汗 WPF FAQ の目次に戻る
A.DataGridColumn.CellStyle にスタイルを定義し、トリガーを設定します。 以下は、Livet を使ったサンプルです。 まず Model に Person クラスを用意しました。名前と所属と住所だけの簡単なクラスです。ちなみに名前空間はコードの都合上、省略してますの…
A.DataGrid.CanUserSortColumns プロパティでグリッド全体のソート可否を制御できます。 列ごとにソートの有効/無効を設定するには DataGridColumn.CanUserSort プロパティを設定してください。DataGrid.CanUserSortColumns を False にした場合、列ごとの…
A.「フィールドの選択」 のタイトルは通常変更することができません。しかし FieldChooser のインスタンスを取得し、Parent の ToolWindow.Title を設定すれば変更が可能です。 以下、サンプルです。前回はコードビハインドで実装しましたが、今回はインタ…
A.FieldLayout.Description プロパティを設定します。 通常「フィールドの選択」のグループ名には、フィールドのグループ名が表示されます。 グループ名を任意の文字列にしたい場合、FieldLayout.Description プロパティを設定すると、グループ名から指定し…
A.Binding.RelativeSource の使い方がいまいちよくわからなかったので、サンプルを使ってまとめてみました。 MSDN の説明によると バインディング ターゲットの位置に対して相対的な位置を指定することにより、バインディング ソースを取得または設定します…
A.CellValuePresenter クラスのスタイルで、ForegroundActiveStyleプロパティ・ForegroundActiveStyle プロパティを編集します。 以下のサンプルでは、department 列が「事務」のレコードの前景色を赤に設定してますが、変更した行の上にマウスを移動したり…
A.WindowsForms の NotifyIcon クラスを使用します。 WPF では残念ながらタスクトレイアイコンの機能が提供されていません。以下の記事で触れられてますが、WPF はプレゼンテーションライブラリだからということで、MS さんはサポートする気がさらさらない…
A.SpellCheck.IsEnabledプロパティを True に設定します。日本語環境の場合は Language プロパティで言語を指定します。 <TextBox SpellCheck.IsEnabled="True" Name="textBox1" Language="en-us" > この依存関係プロパティは、TextBoxBase クラスを継承したコントロールのみ有効で、標準コントロールでは TextBox・RichTextBox のみ</textbox>…
A.XamDataGrid.FieldSettings.CellValuePresenterStyle プロパティを設定します。 XamDataGrd にはテーマが豊富に用意されてますが、テーマの中にはセル境界線を非表示にしてしまうものもあります。これでは視認性が悪いので表示できないか調べたところ、Fi…
A.XamDataGrid.Theme プロパティを設定します。 以下、サンプルです。コンボボックスで選択したテーマが XamDataGrid に反映されます。
A.Forms の DataGridView はスクロールバーをダブルクリックしても MouseDoubleClick イベントは発生しません。しかし WPF の DataGrid や XamDataGrid は、スクロールバーをダブルクリックすると MouseDoubleClick イベントが発生します。どうやらこれは仕…
A.DataRecordCellArea のスタイルを編集します。 以下のサンプルでは、department 列が「事務」のレコードの前景色を赤に設定してます。
A.FieldLayout.SortedFields.Clear メソッドを実行します。 以下、サンプルです。 C# private void button1_Click(object sender, RoutedEventArgs e) { this.xamDataGrid1.FieldLayouts[0].SortedFields.Clear(); } VB.NET Private Sub Button1_Click(send…
A.FieldLayout.RecordFilters.Clear メソッドを実行します。 たとえば deeartment フィールドが「事務」でフィルタリングされてるとします。 XamDataGrid でフィルタリングを初期化するには、通常 FilterClear Button をクリックします。 クリックするとフ…
A.RecordFilter の新しいインスタンスを作成し、FieldLayout.RecordFilters に追加します。 以下、サンプルです。このサンプルでは nameフィールドのフィルタリング条件を「等しい」にし、初期値を「佐藤 陽一」に設定してます。 C# using System; using Sy…
A.FieldLayout.RecordFilters に起動時に設定したい条件を追加します。 以下、サンプルです。このサンプルでは全フィールドのフィルタリングの初期条件を「含む」に設定してます。
A.FieldSettings の FilterOperatorDropDownItems プロパティに使用する条件のリストを指定します。 以下、サンプルです。このサンプルでは条件演算子「等しい」「含む」「始まる」を設定してます。
A.FieldSettings の AllowRecordFiltering プロパティを True にすると、フィルタリングを有効にできます。 以下、サンプルです。
A.自分でロジックを組むこともできますが、GrapeCity の WPFコンポーネント InputMan for WPF に含まれている GcTextBox を使えば、入力制限を簡単に設定できます。InputMan for Windows Forms で長年培われた日本語入力技術がこのコンポーネントにも反映さ…
A.Livet を使うとコードビハインドを使わずに画面遷移が可能になります。Livet では画面遷移のメッセージアクションが提供されているので、これを使うといいでしょう。 ケースよっては、子画面を起動したら親画面を非表示にしたい場合もあります。その場合…
A.SummaryResultPresenter のスタイルを設定します。 以下、サンプルです。集計結果を青・文字サイズ20・太字・右寄せにしてみました。
A. FieldSettings.EditorStyle のスタイル定義内で InputMethod クラスのプロパティを設定します。 <igDP:Field Name="Summary" Label="摘要" > <igDP:Field.Settings> <igDP:FieldSettings> <igDP:FieldSettings.EditorStyle> <Style TargetType="{x:Type igEditors:XamTextEditor}"> </igdp:fieldsettings.editorstyle></igdp:fieldsettings></igdp:field.settings></igdp:field>
A.XamDataGrid.UpdateMode プロパティでいくつかのモードを指定できるようですが、残念ながら UpdateMode 列挙体の記述を見る限り、編集と同時にレコードをコミットするモードはないようです。 メンバ 解説 OnRecordChangeOrLostFocus ユーザーがレコードの…
A. Infragisitics の池原さんのブログで紹介されてますが、FieldSettings.EditorStyle のスタイル定義内で XamTextEditor.TextWrapping を設定します。 関連記事 : 【KBJ10092】xamDataGrid でセルの表示を複数行にするには #この記事たどりつくの、ちと手…
A. ありません。タイマー動作は DispatcherTimer クラスを使ってください。 以下、簡単なサンプルです。 Private Sub SetDispatcherTimer() _dispatcherTimer = New DispatcherTimer(DispatcherPriority.Normal) _dispatcherTimer.Interval = New TimeSpan(…
A. 有償ですが、NetAdvantage for WPF 2011 Volume 2 で強化された xamComboEditor がかなりいい感じです。 ちなみに Forms 版のチェックボックス付きコンボボックスはこちら。 チェックボックスは xamComboEditor の CheckBoxVisibility プロパティを Visi…
A. 対象となる Field の FieldSettings.CellMaxWidth を 0 に設定します。 集計行に合計値を出したいが、フィールドは見せたくないという特殊なニーズがありました。 早速 Field の幅を 0 にして試したところ、セルは非表示になりません。数ピクセル表示し…