2013-05-28 1 views
1

WPF Toolkit에서 AutoCompleteBox 컨트롤을 사용하고 있습니다.WPF Toolkit AutoCompleteBox - 텍스트 상자보다 다른 배경, 드롭 다운에서 전경 설정하는 방법

항목 드롭 다운에서 다른 배경 및 전경을 텍스트 상자보다 어떻게 설정합니까?

아래의 XAML은 드롭 다운의 항목 텍스트 블록에 다른 스타일을 적용하지만 드롭 다운 항목 뒤에 배경은 자동 완성 텍스트 상자의 배경색으로 남겨 둡니다. 기본적으로 autocomplete 텍스트 상자에는 어두운 배경이 있고 드롭 다운에는 흰색 배경이 있어야합니다.

<Style x:Key="SearchBox2" TargetType="wpftoolkit:AutoCompleteBox" > 
     <Setter Property="Background" Value="#3B4044"></Setter> 
     <Setter Property="Foreground" Value="#FFFFFF"></Setter> 
     <Setter Property="BorderBrush" Value="#000000"></Setter> 
     <Setter Property="BorderThickness" Value="1"></Setter> 
     <Setter Property="Height" Value="25"></Setter> 
    </Style> 

     <wpftoolkit:AutoCompleteBox 
      x:Name="SearchBox" 
      Grid.Column="0" Grid.Row="0" 
      ValueMemberPath="SearchDesc" 
      FilterMode="Contains" 
      IsTextCompletionEnabled="True" 
      Text="Search for an app..." 
      Style="{StaticResource SearchBox2}" > 
      <wpftoolkit:AutoCompleteBox.ItemTemplate> 
       <DataTemplate> 
        <StackPanel> 
         <TextBlock Text="{Binding LongDesc}" Foreground="#16509A" Background="White" /> 
        </StackPanel> 
       </DataTemplate> 
      </wpftoolkit:AutoCompleteBox.ItemTemplate> 
     </wpftoolkit:AutoCompleteBox> 

답변

1

대신 ItemTemplate를 사용하는 ItemContainerStyle를 사용합니다. 아래의 코드 수정을 찾아보고이 코드가 작동하는지 여부를 알려주십시오.

<wpftoolkit:AutoCompleteBox 
    x:Name="SearchBox" 
    Grid.Column="0" Grid.Row="0"    
    FilterMode="Contains" 
    IsTextCompletionEnabled="True" 
    Text="Search for an app..."> 
    <wpftoolkit:AutoCompleteBox.ItemContainerStyle> 
     <Style TargetType="ListBoxItem"> 
      <Setter Property="Background" Value="White"/> 
      <Setter Property="Foreground" Value="#16509A"/> 
     </Style> 
    </wpftoolkit:AutoCompleteBox.ItemContainerStyle>   
</wpftoolkit:AutoCompleteBox> 
:

이 코드를 시도하십시오