2012-10-26 4 views
1

격자 레이아웃의 배경 이미지에 이상한 문제가 있습니다. 어떤 이유로 ListPicker가 이미지를 완전히 덮지 않습니다. 대신 약간의 불투명도가 적용 ...격자 배경 이미지 불투명도 문제

Gird background with opacity issue

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> 
     <Grid> 
      <Grid.Background> 
       <ImageBrush 
         ImageSource="/BrewingApp;component/Images/icon_gears_big.png" 
         AlignmentX="Right" 
         AlignmentY="Bottom" 
         Stretch="None" 
         Opacity="0.5" /> 
      </Grid.Background> 
      <Grid.RowDefinitions> 
       <RowDefinition Height="Auto"/> 
       <RowDefinition Height="1*"/> 
      </Grid.RowDefinitions> 
... 
       <StackPanel 
       Grid.Row="1" 
       Margin="0,12,0,0"> 
       <TextBlock Text="More Stuff :-)"></TextBlock> 
       <Rectangle 
         Grid.Row="1" 
         HorizontalAlignment="Stretch" 
         VerticalAlignment="Top" 
         Height="1" 
         Stroke="Red" 
         StrokeThickness="1" > 
       </Rectangle> 

       <toolkit:ListPicker 
        Header="Hop Formula" 
        ItemsSource="{Binding HopFormulaList}" 
        SelectedItem="{Binding HopFormulaSelection, Mode=TwoWay}" 
        HorizontalAlignment="Stretch" OpacityMask="Blue" /> 

      </StackPanel> 

     </Grid> 

감사합니다 (그림에서 기어 아이콘 봐)!

+0

OpacityMask = "Blue"가 참조하는 것은 무엇입니까? – paul

+0

죄송합니다. 나는 다른 값으로 조금 놀기 시작했습니다 ... 저는 OpacityMask를 사용한다는 것을 의미하지는 않았습니다. 나는 그것을 제거하는 것을 잊었을 것입니다! – Tom

답변

1

TextBoxListPicker은 배경에 PhoneTextBoxBrush을 사용하고 있습니다. 이 브러시는 #BFFFFFFF 색상을 사용합니다. 즉, 약간의 투명도 (BF)가있는 흰색 (FFFFFF)입니다. 그러므로 당신 문제. 이 문제를 해결하는 한 가지 방법은 단순히 컨트롤의 배경을 변경하는 것입니다 :

<Grid.Resources> 
    <SolidColorBrush x:Key="PhoneTextBoxBrush" Color="#BEBEBE"/> 
    <Style TargetType="toolkit:ListPicker"> 
     <Setter Property="Background" Value="{StaticResource PhoneTextBoxBrush}" /> 
    </Style> 
    <Style TargetType="TextBox"> 
     <Setter Property="Background" Value="{StaticResource PhoneTextBoxBrush}" /> 
    </Style> 
</Grid.Resources> 
+0

거의 완벽한, 컨트롤의 테두리가 여전히 투명합니다. 국경의 색깔과 재산도 알고 있습니까? thx – Tom

+1

ListPicker의 소스 코드를 확인하십시오 : http://silverlight.codeplex.com/SourceControl/changeset/view/80285#1510300''. 그런 다음 기본 WP7 테마를 확인하여 브러시의 기본값 ('C : \ Program Files (Microsoft) SDKs \ Windows Phone \ v7.1 \ Design \ ThemeResources.xaml')을 확인하십시오. 이 경우 배경과 같은 브러쉬를 사용하므로 ''이 트릭을 수행해야합니다. –