선택기 항목 컬렉션에 데이터 추가
선택기 보기는 데이터 목록에서 텍스트 항목을 선택하기 위한 컨트롤입니다. 이 문서에서는 항목을 항목 컬렉션에 추가하여 선택기를 데이터로 채우는 방법과 사용자가 항목 선택에 응답하는 방법을 설명합니다.
데이터로 선택기 채우기
Xamarin.Forms 2.3.4 이전에는 데이터로 채우는 Picker
프로세스는 읽기 전용 Items
컬렉션에 표시할 데이터를 추가하는 것이었습니다( 형식IList<string>
). 컬렉션의 각 항목은 형식 string
이어야 합니다. 항목 목록을 x:String
사용하여 속성을 초기화 Items
하여 XAML에서 항목을 추가할 수 있습니다.
<Picker Title="Select a monkey"
TitleColor="Red">
<Picker.Items>
<x:String>Baboon</x:String>
<x:String>Capuchin Monkey</x:String>
<x:String>Blue Monkey</x:String>
<x:String>Squirrel Monkey</x:String>
<x:String>Golden Lion Tamarin</x:String>
<x:String>Howler Monkey</x:String>
<x:String>Japanese Macaque</x:String>
</Picker.Items>
</Picker>
해당하는 C# 코드는 다음과 같습니다.
var picker = new Picker { Title = "Select a monkey", TitleColor = Color.Red };
picker.Items.Add("Baboon");
picker.Items.Add("Capuchin Monkey");
picker.Items.Add("Blue Monkey");
picker.Items.Add("Squirrel Monkey");
picker.Items.Add("Golden Lion Tamarin");
picker.Items.Add("Howler Monkey");
picker.Items.Add("Japanese Macaque");
메서드를 사용하여 Items.Add
데이터를 추가하는 것 외에도 메서드를 사용하여 Items.Insert
컬렉션에 데이터를 삽입할 수도 있습니다.
항목 선택에 응답
A는 Picker
한 번에 하나의 항목을 선택할 수 있습니다. 사용자가 항목을 SelectedIndexChanged
선택하면 이벤트가 발생하며 SelectedIndex
속성이 목록에서 선택한 항목의 인덱스를 나타내는 정수로 업데이트됩니다. 속성은 SelectedIndex
사용자가 선택한 항목을 나타내는 0부터 시작하는 숫자입니다. 항목을 선택하지 않은 경우(처음 만들어지고 초기화된 SelectedIndex
경우Picker
)는 -1이 됩니다.
다음 코드 예제에서는 이벤트가 발생할 때 실행되는 이벤트 처리기 메서드를 SelectedIndexChanged
보여 OnPickerSelectedIndexChanged
줍니다.
void OnPickerSelectedIndexChanged(object sender, EventArgs e)
{
var picker = (Picker)sender;
int selectedIndex = picker.SelectedIndex;
if (selectedIndex != -1)
{
monkeyNameLabel.Text = picker.Items[selectedIndex];
}
}
이 메서드는 SelectedIndex
속성 값을 가져오고 이 값을 사용하여 컬렉션에서 선택한 항목을 검색합니다 Items
. 컬렉션의 Items
각 항목은 a string
이므로 캐스트 없이도 Label
표시할 수 있습니다.
참고 항목
속성을 설정하여 특정 항목을 표시하도록 A Picker
를 초기화할 SelectedIndex
수 있습니다. 그러나 컬렉션을 초기화 Items
한 SelectedIndex
후 속성을 설정해야 합니다.