Изменить класс стиля элемента условно в Xamarin - PullRequest
0 голосов
/ 14 марта 2020

Я пытаюсь изменить класс фрейма в зависимости от значения переменной. Я попытался изменить свойства "class", "ClassId" и "StyleClass". Я также пытался с триггерами, но в конце концов мне пришлось изменить это таким образом. Есть ли способ сделать это более элегантно? Что, если мне нужно изменить несколько стилей условно?

Я пробовал это:

<Frame x:Name="FilaListaEventos" class="{Binding Alerts}">

И это:

<Frame x:Name="FilaListaEventos" StyleClass="{Binding Alerts}">

И это:

<Frame x:Name="FilaListaEventos" ClassId="{Binding Alerts}">

А также попробовал это:

<Frame StyleClass="ListRow">
   <Frame.Triggers>
      <DataTrigger TargetType="Frame" Binding="{Binding Alerts}" Value="True">
         <Setter Property="ClassId" Value="ListRowAlerts" />
      </DataTrigger>
   </Frame.Triggers>
   ...

Но, наконец, я понял это так:

<Frame StyleClass="ListRow">
   <Frame.Triggers>
      <DataTrigger TargetType="Frame" Binding="{Binding Alerts}" Value="True">
         <Setter Property="BackgroundColor" Value="Yellow" />
      </DataTrigger>
   </Frame.Triggers>
   ...
...