FileterMode プロパティを使用すると、ドロップダウンに表示される項目のフィルター方法を設定することができます。
FilterMode プロパティ(下記参照)には AutoCompleteFilterMode 列挙体を指定します。既定値は StartsWith です。
メンバ名 | 説明 |
---|---|
None | フィルターを使用しない。 |
StartsWith | 指定された文字列で始まるものを取得する。大文字と小文字は区別しない。 |
StartsWithCaseSensitive | 指定された文字列で始まるものを取得する。大文字と小文字を区別する。 |
StartsWithOrdinal | 指定された文字列で始まるものを取得する。大文字と小文字を区別しない序数フィルター。 |
StartsWithOrdinalCaseSensitive | 指定された文字列で始まるものを取得する。大文字と小文字を区別する序数フィルター。 |
Contains | 指定された文字列が含まれるものを取得する。大文字と小文字は区別しない。 |
ContainsCaseSensitive | 指定された文字列が含まれるものを取得する。大文字と小文字を区別する |
ContainsOrdinal | 指定された文字列が含まれるものを取得する。大文字と小文字を区別しない序数フィルター。 |
ContainsOrdinalCaseSensitive | 指定された文字列が含まれるものを取得する。大文字と小文字を区別する。序数フィルター。 |
Equals | 指定された文字列と一致するものを取得する。大文字と小文字は区別しない。 |
EqualsCaseSensitive | 指定された文字列と一致するものを取得する。大文字と小文字を区別する。 |
EqualsOrdinal | 指定された文字列と一致するものを取得する。大文字と小文字を区別する序数フィルター。 |
EqualsOrdinalCaseSensitive | 指定された文字列と一致するものを取得する。大文字と小文字を区別する。序数フィルター。 |
Custom | カスタムフィルター。独自のフィルターを指定できる。 |
下記はFilterMode プロパティに Contains を設定する例です。
テキストボックスに”ra”と入力すると、”ra”という文字列が含まれるフルーツが表示されます。
XAMLの例
<sdk:AutoCompleteBox Height="28" Name="fruitsACB" Width="221" IsTextCompletionEnabled="True" FilterMode="Contains" />
VBの例
Public Sub New() InitializeComponent() 'データソースの設定 fruitsACB.ItemsSource = GetItemSource() 'FlterModeにContainsを設定する fruitsACB.FilterMode = AutoCompleteFilterMode.Contains End Sub ''' <summary> ''' データソースを取得する ''' </summary> ''' <returns></returns> ''' <remarks></remarks> Private Function GetItemSource() As List(Of String) Dim fruits As New List(Of String) fruits.Add("Orange") fruits.Add("Grapes") fruits.Add("Pineapple") fruits.Add("Watermelon") fruits.Add("Strawberry") fruits.Add("Lemon") fruits.Add("Mandarin") fruits.Add("Lime") fruits.Add("Peach") fruits.Add("Loquat") Return fruits End Function
C#の例
public Page5() { InitializeComponent(); // データソースの設定 fruitsACB.ItemsSource = GetItemSource(); // FlterModeにContainsを設定する fruitsACB.FilterMode = AutoCompleteFilterMode.Contains; } /// <summary> /// データソースを取得する /// </summary> /// <returns></returns> private List<string> GetItemSource() { List<string> fruits = new List<string>(); fruits.Add("Orange"); fruits.Add("Grapes"); fruits.Add("Pineapple"); fruits.Add("Watermelon"); fruits.Add("Strawberry"); fruits.Add("Lemon"); fruits.Add("Mandarin"); fruits.Add("Lime"); fruits.Add("Peach"); fruits.Add("Loquat"); return fruits; }