Xamarin.Android のドキュメント
クイックスタート:C1AutoComplete へのデータの挿入
コントロール > Input > AutoComplete > クイックスタート:C1AutoComplete へのデータの挿入

このセクションでは、C1AutoComplete コントロールを Android アプリケーションに追加し、そのコントロールにデータを挿入する方法を説明します。このトピックは 2 つの手順で構成されます。

次の図は、ユーザーがテキストを入力したときに、C1AutoComplete コントロールがドロップダウンリストに候補リストをどのように提供するかを示しています。

Xuni AutoComplete control

手順 1:C1AutoComplete コントロールの追加

コードで C1AutoComplete コントロールを初期化する

C1AutoComplete コントロールをレイアウトに追加するには、ソリューションエクスプローラからレイアウトフォルダー内に .axml ファイルを開き、そのコードを以下のコードで置き換えます。

XML
コードのコピー
<?xml version="1.0" encoding="utf-8"?>
<C1.Android.Input.C1AutoComplete xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/autocomplete_highlight"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

C1AutoComplete コントロールをツールボックス内のCustom controls タブからデザイナーモードでレイアウト表面にドラッグすることもできます。レイアウトを初期化するには、Activity 内の OnCreate メソッドに次のコードを追加します。

C#
コードのコピー
public class AutoCompleteActivity : Activity
    {
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.activity_autocomplete);

            var highLightAutoComplete = (C1AutoComplete)this.FindViewById(Resource.Id.autocomplete_highlight);
            highLightAutoComplete.ItemsSource = Countries.GetDemoDataList();
            highLightAutoComplete.DisplayMemberPath = "Name";
        }
    }
    public class Countries : object
    {
        public string Name { get; set; }
        public Countries()
        {
            this.Name = string.Empty;
        }
        public Countries(string name, double sales, double salesgoal, double download, double downloadgoal, double expense, double expensegoal, string fruits)
        {
            this.Name = name;
        }
        public static IEnumerable<object> GetDemoDataList()
        {
            List<object> array = new List<object>();

            var quarterNames = "オーストラリア,バングラデシュ,ブラジル,カナダ,にほん".Split(',');

            for (int i = 0; i < quarterNames.Length; i++)
            {
                array.Add(new Countries
                {
                    Name = quarterNames[i]
                });
            }
            return array as IEnumerable<object>;
        }
    }

手順 2:プロジェクトの実行

F5]キーを押してプロジェクトを実行します。