नहीं, मुख्य संपत्ति xamarin पिकर में उपलब्ध है। लेकिन, आप इसे ज़ैमरिन पिकर क्लास के डिक्शनरी क्लास और चयनित इंडेक्स प्रॉपर्टी का उपयोग करके कार्यान्वित कर सकते हैं।
निम्नलिखित कोड स्निपेट का उपयोग करके इसे लागू:
class PickerDemoPage : ContentPage
{
// Dictionary to get Color from color name.
Dictionary<string, Color> nameToColor = new Dictionary<string, Color>
{
{ "Aqua", Color.Aqua }, { "Black", Color.Black },
{ "Blue", Color.Blue }, { "Fuschia", Color.Fuschia },
{ "Gray", Color.Gray }, { "Green", Color.Green },
{ "Lime", Color.Lime }, { "Maroon", Color.Maroon },
{ "Navy", Color.Navy }, { "Olive", Color.Olive },
{ "Purple", Color.Purple }, { "Red", Color.Red },
{ "Silver", Color.Silver }, { "Teal", Color.Teal },
{ "White", Color.White }, { "Yellow", Color.Yellow }
};
public PickerDemoPage()
{
Label header = new Label
{
Text = "Picker",
FontSize = Device.GetNamedSize (NamedSize.Large, typeof(Label)),
HorizontalOptions = LayoutOptions.Center
};
Picker picker = new Picker
{
Title = "Color",
VerticalOptions = LayoutOptions.CenterAndExpand
};
foreach (string colorName in nameToColor.Keys)
{
picker.Items.Add(colorName);
}
// Create BoxView for displaying picked Color
BoxView boxView = new BoxView
{
WidthRequest = 150,
HeightRequest = 150,
HorizontalOptions = LayoutOptions.Center,
VerticalOptions = LayoutOptions.CenterAndExpand
};
picker.SelectedIndexChanged += (sender, args) =>
{
if (picker.SelectedIndex == -1)
{
boxView.Color = Color.Default;
}
else
{
string colorName = picker.Items[picker.SelectedIndex];
boxView.Color = nameToColor[colorName];
}
};
// Accomodate iPhone status bar.
this.Padding = new Thickness(10, Device.OnPlatform(20, 0, 0), 10, 5);
// Build the page.
this.Content = new StackLayout
{
Children =
{
header,
picker,
boxView
}
};
}
}
स्रोत: https://developer.xamarin.com/api/type/Xamarin.Forms.Picker/
उत्कृष्ट कोड नमूना। अभी भी पूरी तरह से समझने की कोशिश कर रहा है कि यह सब एक साथ कैसे काम करता है, लेकिन सबसे सरल उदाहरण मैं पा सकता हूं। मैं किसी भी अन्य के लिए आसानी से कोड में चयनित इटैम की कुंजी और मूल्यों तक पहुंचने में सक्षम था जो ऐसा करना चाह सकता है। – Tim
इस संपत्ति को xaml में पिकर में जोड़ें, और फिर किसी भी विधि का नाम दें। <पिकर चयनित इंडेक्स चेंज = "OnPickerChangedEvent" /> xaml.cs सार्वजनिक शून्य पर उस विधि को कॉल करें OnPickerChangedEvent (ऑब्जेक्ट प्रेषक, EventArgs ई) { var picker = (पिकर) प्रेषक; var myIndex = picker.SelectedIndex; var myData = this.MyViewModel.SelectedItem.Key; } – Tim