Так что у меня есть следующий сборщик со списком строк в качестве источника элемента. Все работает отлично, за исключением того, что мне не нравится, как я должен передавать весь объект обратно в модель представления. То, что я пытаюсь сделать, это только передать выбранный элемент в viewmodel.
XAML:
<Picker x:Name="EventTypePicker" ItemsSource="{Binding EventTypes}" SelectedItem="{Binding EventType}">
<Picker.Behaviors>
<behaviors:EventHandlerBehavior EventName="SelectedIndexChanged">
<behaviors:InvokeCommandAction Command="{Binding EventTypePickerSelectionChangeCommand}" CommandParameter="{Reference EventTypePicker}"/>
</behaviors:EventHandlerBehavior>
</Picker.Behaviors>
</Picker>
ViewModel:
//obj is the picker object. Would prefer for this just to be the selected item
private void OnEventTypeChange(object obj) {
var picker = ((Xamarin.Forms.Picker) obj).SelectedItem.ToString();
}
По существу, что я хотел бы Совершенно sh выглядит примерно так:
CommandParameter="{Reference EventTypePicker.SelectedItem}"
Вместо:
CommandParameter="{Reference EventTypePicker}"