<UserControl Loaded="UserControl_Loaded" … >
このトピックでは、ユーザーができるだけ早く操作に慣れるために、プロシージャー コードおよび XAML を使用して xamSpellChecker コントロールをページに追加するために必要な基本手順について説明します。
前提:
このトピックは辞書がアプリケーションに追加済みであることを前提とします。詳細については、 「辞書」を参照してください。
エンドユーザーがテキスト ボックスに入力した単語をスペルチェックする xamSpellChecker コントロールを作成します。
WPF プロジェクトを作成します。
以下の NuGet パッケージ参照をアプリケーションに追加します。
Infragistics.WPF.SpellChecker
NuGet フィードのセットアップと NuGet パッケージの追加の詳細については、NuGet フィード ドキュメントを参照してください。
UserControl の Loaded イベントにイベント ハンドラを接続します。
XAML の場合:
<UserControl Loaded="UserControl_Loaded" … >
以下の using/Import のディレクティブを追加します。これでメンバーの完全に記述された名前を入力したり、xamSpellChecker用に XAML 名前空間を追加する必要がなくなります。
XAML の場合:
<xmlns:ig="http://schemas.infragistics.com/xaml">
Visual Basic の場合:
Imports Infragistics.Controls.Interactions Imports Infragistics Imports System.Windows.Data
C# の場合:
using Infragistics.Controls.Interactions; using Infragistics; using System.Windows.Data;
xamSpellChecker コントロールのインスタンスを LayoutRoot という名前のデフォルトのグリッド レイアウト パネルに追加します。プロシージャー コードでこれを行う場合、ユーザー コントロールの Loaded イベントを処理し、イベント ハンドラーにこのコードを配置することができます。
XAML の場合:
<ig:XamSpellChecker x:Name="spellChecker"> <!-- SpellCheckerTargets を追加します --> </ig:XamSpellChecker>
Visual Basic の場合:
Dim spellChecker As New XamSpellChecker()
C# の場合:
XamSpellChecker spellChecker = new XamSpellChecker();
txtSpellCheck という名前のテキストボックスを作成します。TextWrapping プロパティを Wrap に設定します。
XAML の場合:
<TextBox x:Name="txtSpellCheck" TextWrapping="Wrap" />
Visual Basic の場合:
Dim txtSpellCheck As New TextBox() txtSpellCheck.TextWrapping = TextWrapping.Wrap
C# の場合:
TextBox txtSpellCheck = new TextBox(); txtSpellCheck.TextWrapping = TextWrapping.Wrap;
xamSpellChecker コントロールの SpellCheckTargets コレクションの Binding 要素を作成します。これはスペルチェックされるテキストを指定します。詳細については、 「テキストをスペルチェックするように指定する方法」を参照してください。
XAML の場合:
<ig:XamSpellChecker.SpellCheckTargets> <Binding ElementName="txtSpellCheck" Path="Text" Mode="TwoWay" ></Binding> </ig:XamSpellChecker.SpellCheckTargets>
Visual Basic の場合:
Dim spellBinding As New Binding() spellBinding.Mode = BindingMode.TwoWay Dim propPathSpellBinding As New PropertyPath("Text") spellBinding.Path = propPathSpellBinding ' 以前に作成した TextBox を指定します spellBinding.Source = txtSpellCheck
C# の場合:
Binding spellBinding = new Binding(); spellBinding.Mode = BindingMode.TwoWay; PropertyPath propPathSpellBinding = new PropertyPath("Text"); spellBinding.Path = propPathSpellBinding; // 以前に作成した TextBox を指定します spellBinding.Source = txtSpellCheck;
プロシージャ コードを使用している場合、SpellCheckTargets コレクションに Binding 要素を追加します。
Visual Basic の場合:
Me.spellChecker.SpellCheckTargets.Add(spellBinding)
C# の場合:
this.spellChecker.SpellCheckTargets.Add(spellBinding);
Button コントロールを作成します。以下のプロパティを設定します。
Content - Check Spelling
プロシージャ コードを使用している場合、新しい RoutedEvenHandler(btnCheckSpelling_Click) の Click イベントを設定します。
XAMLを使用している場合、Button がクリックされた時に実行される Button コントロールにコマンドを追加します。この例は、ボタンのクリックのコマンドを使用します。
XAML の場合:
<Button x:Name="btnCheckSpelling" Content="Check Spelling"> <ig:Commanding.Command> <ig:XamSpellCheckerCommandSource CommandType="SpellCheck" TargetName="spellChecker" EventName="Click"/> </ig:Commanding.Command> </Button>
Visual Basic の場合:
Dim btnCheckSpelling As New Button() btnCheckSpelling.Content = "Check Spelling" btnCheckSpelling.VerticalAlignment = Windows.VerticalAlignment.Bottom btnCheckSpelling.HorizontalAlignment = Windows.HorizontalAlignment.Left AddHandler btnCheckSpelling.Click, AddressOf btnCheckSpelling_Click
C# の場合:
Button btnCheckSpelling = new Button(); btnCheckSpelling.Content = "Check Spelling"; btnCheckSpelling.VerticalAlignment = VerticalAlignment.Bottom; btnCheckSpelling.HorizontalAlignment = HorizontalAlignment.Left; btnCheckSpelling.Click += new RoutedEventHandler(btnCheckSpelling_Click);
プロシージャー コードのステップに従う場合、TextBox、Button および xamSpellChecker を Grid パネルの Children コレクションに追加します。注: 新しいページを初めて作成する時には、デフォルトでグリッド パネルが作成され、パネル名が LayoutRoot に指定されます。
Visual Basic の場合:
Me.LayoutRoot.Children.Add(txtSpellCheck) Me.LayoutRoot.Children.Add(btnCheckSpelling) Me.LayoutRoot.Children.Add(spellChecker)
C# の場合:
this.LayoutRoot.Children.Add(txtSpellCheck); this.LayoutRoot.Children.Add(btnCheckSpelling); this.LayoutRoot.Children.Add(spellChecker);
プロシージャ コードのステップに従う場合、ボタンのクリックで xamSpellChecker コントロールの SpellCheck() メソッドを呼び出します。
Visual Basic の場合:
Private Sub btnCheckSpelling_Click(sender As Object, e As RoutedEventArgs) Me.spellChecker.SpellCheck() End Sub
C# の場合:
void btnCheckSpelling_Click(object sender, RoutedEventArgs e) { this.spellChecker.SpellCheck(); }
アプリケーションを保存して実行します。スペルミスのテキストをテキストボックスに入力してボタンをクリックします。スペルチェッカー ダイアログが表示されます。