2017-05-22 19 views
1

私が設定できる方法はありますか?IsEnable Picker.Itemの項目にプロパティがありますか?Xamarin - Item.PickerにIsEnableプロパティを追加する

以下の例のように、最初のItemにIsEnableプロパティを設定する必要があります。この問題を回避する方法はありますか?

<Picker> 
    <Picker.Items> 
     <x:String IsEnable="true">Option 1</x:String> 
     <x:String>Option 2</x:String> 
     <x:String>Option 3</x:String> 
     <x:String>Option 4</x:String> 
    </Picker.Items> 
</Picker> 

ありがとうございました!

答えて

0

選択した項目を設定する場合は、Picker自体にSelectedIndexプロパティを設定するか、バインドするか手動で設定します。あなたのケースでは

<Picker 
    SelectedIndex="{Binding SelectedIndex}" 
    ItemsSource="{Binding Items}" 
/> 

あなたはそれを設定します0

UPDATE: は、実際に各回答にでIsEnabledを追加して、あなたはおそらくに見てする必要があるだろう、リスト内のunpickableとしてこれらのアイテムを実装しますカスタムのバインド可能なプロパティと各プラットフォーム用のカスタムレンダラーを作成します。この機能は現時点でXamarin Formsにはないので、独自に作成する必要があります。また、Itemsコレクションに変更可能なアイテムを含まないように変更する方が簡単かもしれません。私はこれがよりユーザーフレンドリーであると思う。

+0

ピッカーのすべてのアイテムを表示したいが、特定の要件が満たされたときに一部のアイテムを無効にする(グレーアウトする)ので、バインドできるようにしたい。IsEnabled = {バインディングsomeboolean} –

+0

私はあなたのコメントに基づいて私の答えを更新しました。 –

1

IsEnableによってアイテムをデフォルトとして設定する場合は、Picker宣言にSelectedIndex="0"を追加すると機能します。例えば。 <Picker SelectedIndex="0">...</Picker>

関連する問題