このセクションでは、ポータブルアプリケーションまたは共有アプリケーションに ComboBox コントロールを追加し、ユーザーのために候補としてドロップダウンに項目のリストを表示する方法を説明します。
ComboBox コントロールを表示するには、次の手順を実行します。
次の図は、ユーザーがキー入力するときに入力候補を表示する ComboBox を示します。
ドロップダウンリストに表示する項目のリストを追加するには、次の手順を実行します。
C# |
コードのコピー
|
---|---|
public class States { public string Name { get; set; } public States(string name) { this.Name = name; } public static List<States> GetStates() { List<States> data = new List<States>(); data.Add(new States("アラバマ")); data.Add(new States("アラスカ")); data.Add(new States("アリゾナ")); data.Add(new States("アーカンソー")); data.Add(new States("カリフォルニア")); data.Add(new States("コロラド")); data.Add(new States("コネティカット")); data.Add(new States("デラウェア")); data.Add(new States("コロンビア特別区")); data.Add(new States("フロリダ")); data.Add(new States("ジョージア")); data.Add(new States("グアム")); data.Add(new States("ハワイ")); data.Add(new States("アイダホ")); data.Add(new States("イリノイ")); data.Add(new States("インディアナ")); data.Add(new States("アイオワ")); data.Add(new States("カンザス")); return data; } } |
XAML |
コードのコピー
|
---|---|
xmlns:c1="clr-namespace:C1.Xamarin.Forms.Input;assembly=C1.Xamarin.Forms.Input" |
XAML |
コードのコピー
|
---|---|
<StackLayout> <Label Text="テキストを入力するまたはドロップダウンをタップして選択する" FontSize="25"/> <c1:C1ComboBox x:Name="cbxEdit" IsEditable="True" HorizontalOptions="FillAndExpand" DropDownBackgroundColor="Gray" DisplayMemberPath="Name" VerticalOptions="Start" /> </StackLayout> |
C# |
コードのコピー
|
---|---|
var array = States.GetStates(); this.cbxEdit.ItemsSource = array; |
C# |
コードのコピー
|
---|---|
public App() { // アプリケーションのルートページ MainPage = new Page1(); } |
C# |
コードのコピー
|
---|---|
C1.Xamarin.Forms.Input.Platform.iOS.C1InputRenderer.Init(); |
C# |
コードのコピー
|
---|---|
C1.Xamarin.Forms.Input.Platform.UWP.C1InputRenderer.Init(); |
Release モードで UWP アプリケーションをコンパイルする場合は、アプリケーションに正しいアセンブリを含めるために、App.xaml.cs の OnLaunched メソッドに次のコードを明示的に追加する必要があります。
C# |
コードのコピー
|
---|---|
var assembliesToInclude = new List<Assembly>(); assembliesToInclude.Add(typeof(C1.Xamarin.Forms.Input.Platform.UWP.C1InputRenderer) .GetTypeInfo().Assembly); assembliesToInclude.Add(typeof(C1.UWP.Input.C1InputRenderer).GetTypeInfo().Assembly); Xamarin.Forms.Forms.Init(e, assembliesToInclude); |