2016-05-14 4 views
0

У меня есть сетка с серым цветом, содержащая 3 радиообъектива «Да/Нет/Ожидание», теперь я хочу изменить цвет сетки на основе выделенного значения.изменить цвет фона сетки на основе RadioButton

Если значение да, сетка станет зеленой.

Если вали нет, сетка станет красной и так далее.

и я хочу, чтобы все, что должно произойти в XAML только нет кода позади, вот мой код:

<Grid Background="#FFF2F2F2" Height="34" HorizontalAlignment="Left" Name="grid19" VerticalAlignment="Top" Width="151"> 
         <RadioButton Content="Yes" Height="16" HorizontalAlignment="Left" Margin="2,12,0,0" Name="radioButton1" VerticalAlignment="Top" /> 
         <RadioButton Content="No" Height="16" HorizontalAlignment="Left" Margin="46,12,0,0" Name="radioButton2" VerticalAlignment="Top" /> 
         <RadioButton Content="Pending" Height="16" HorizontalAlignment="Left" Margin="86,12,0,0" Name="radioButton3" VerticalAlignment="Top" /> 
        </Grid> 

большое спасибо ^^

ответ

0
<Grid Height="60" HorizontalAlignment="Left" Name="grid19" VerticalAlignment="Top" Width="151"> 
     <RadioButton Content="Yes" Height="16" HorizontalAlignment="Left" Margin="2,12,0,0" Name="radioButton1" VerticalAlignment="Top" /> 
     <RadioButton Content="No" Height="16" HorizontalAlignment="Left" Margin="46,12,0,0" Name="radioButton2" VerticalAlignment="Top" /> 
     <RadioButton Content="Pending" Height="16" HorizontalAlignment="Left" Margin="86,12,0,0" Name="radioButton3" VerticalAlignment="Top" /> 
     <Grid.Style> 
      <Style TargetType="Grid"> 
       <Setter Property="Background" Value="#FFF2F2F2" /> 
       <Style.Triggers> 
        <DataTrigger Binding="{Binding ElementName=radioButton1, Path=IsChecked}" Value="True"> 
         <Setter Property="Background" Value="Red" /> 
        </DataTrigger> 
        <DataTrigger Binding="{Binding ElementName=radioButton2, Path=IsChecked}" Value="True"> 
         <Setter Property="Background" Value="Blue" /> 
        </DataTrigger> 
        <DataTrigger Binding="{Binding ElementName=radioButton3, Path=IsChecked}" Value="True"> 
         <Setter Property="Background" Value="Green" /> 
        </DataTrigger> 
       </Style.Triggers> 
      </Style> 
     </Grid.Style> 
    </Grid> 

Обратите внимание, что я удалил по умолчанию Фон и добавил его как сеттер, потому что добавление его напрямую переопределит все остальные свойства фона. Надеюсь, что это поможет вам.

+1

thanls bro его работа ^^ –

Смежные вопросы