Связывание XAML из 2 объектов XAML -Xamarin - PullRequest
0 голосов
/ 15 марта 2019

Я хочу установить свойство IsEnabled кнопки на основе переключателя и средства выбора, используя привязку. Как то так:

XAML:

<Button Text="Start tracking"
            AbsoluteLayout.LayoutBounds="0, 1, 1, 0.1"
            AbsoluteLayout.LayoutFlags="All"
            x:Name="startTrackingButton"
            IsEnabled="{Binding}"
            Clicked="StartTracking_Clicked"
            VerticalOptions="CenterAndExpand"/>

Код позади:

startTrackingButton.BindingContext = (!autoTrackingSwitch.IsToggled || frequencyPicker.IsSet);

Это решение не работает. Как мне это сделать? Спасибо.

1 Ответ

0 голосов
/ 15 марта 2019

Попробуйте использовать Style:

<Style TargetType="Button">
  <Style.Triggers>
    <MultiTrigger>
      <MultiTrigger.Conditions>
        <BindingCondition Binding="{Binding Source={x:Reference autoTrackingSwitch}, Path=IsToggled}" Value="True"/>
        <BindingCondition Binding="{Binding Source={x:Reference frequencyPicker}, Path=IsSet}" Value="True"/>
      </MultiTrigger.Conditions>
      <Setter Property="Enabled" Value="True"/>
    </MultiTrigger>
  </Style.Triggers>
</Style>

Вы можете указать его внутри Button.Resources вашей кнопки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...