2015-03-12 18 views
5

Potrzebuję utworzyć selektora stanów w moich formularzach Xamarin. Używam pliku Xaml do tworzenia widoków.Xamarin Forms Picker Element binding wiązania w Xaml

Może ktoś mi pomóc, aby związać Picker w XAML ze źródła sprzęcie?

+1

http://stackoverflow.com/help/how-to-ask –

+0

ostatni raz sprawdzałem nie było właściwość wiązania ItemSource na próbniku w XAML. Powiedziałeś, że powinieneś zrobić powiązanie w kodzie lub poprzez niestandardowy BindablePicker (np .: https://forums.xamarin.com/discussion/30801/xamarin-forms-bindable-picker) – Wizche

+0

thecoshman - czasami nie mamy pojęcia, gdzie zacznij i przyjdź tutaj po radę/próbki –

Odpowiedz

1

Nie można tego zrobić w XAML, jak widać here.

Będziesz musiał wczytać dane do kodu, używając zwykłego API lub czegoś w rodzaju this.

Można również przekształcić do postaci szeregowej listę jako JSON lub preferowany format, deserializować i przekazać do Picker.

0

Ta funkcja nie istniała wcześniej, ale została ostatnio dodana do standardowego selektora Xamarin.Forms za pośrednictwem nowych właściwości ItemsSource i SelectedItem. Obecnie znajduje się w przedpremierowym pakiecie NuGet dla version 2.3.4-pre1, ale powinien być w stabilnej wersji 2.3.4+ po jej wydaniu.

0

Jak zauważył JordanMazurke, XLabs ma to. Oto przykład:

<ContentPage x:Class="XLabs.Samples.Pages.Controls.ExtendedPickerPage" 
     xmlns="http://xamarin.com/schemas/2014/forms" 
     xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
     xmlns:controls="clr-namespace:XLabs.Forms.Controls;assembly=XLabs.Forms" 
     Title="Picker"> 
<ContentPage.Content> 
    <StackLayout x:Name="myStackLayout"> 
     <Label Text="Xaml:" /> 
     <controls:ExtendedPicker x:Name="myPicker" 
           DisplayProperty="FirstName" 
           ItemsSource="{Binding MyDataList}" 
           SelectedItem="{Binding TheChosenOne}" /> 
    </StackLayout> 
</ContentPage.Content> 

Powiązane problemy