This topic has not yet been rated - Rate this topic

ContactSearch style and template

Beyond the basics topic

Learn about the styles and templates for the ContactSearch control. You can modify the default ControlTemplate to give the control a unique appearance. For more information, see the other topics in the Customizing Lync Controls section.

Applies to:  Lync 2013 | Lync Server 2013 

There are no states or Style properties for the ContactSearch control.

ContactSearch

The following table lists the named parts for the ContactSearch control.

Part

Type

Description

ContactSearchInputBox

ContactSearchInputBox

Enables users to search their organization for people based on name, phone number, or skill.

The following shows the XML namespace mapping that you have to specify when you work with styles and templates.

xmlns:controls="clr-namespace:Microsoft.Lync.Controls;assembly=Microsoft.Lync.Controls"

The following sample shows the default Windows Presentation Foundation style and template for the ContactSearch control.

<Style x:Key="ContactSearchStyle1" TargetType="{x:Type controls:ContactSearch}">
 <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled" />
 <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
 <Setter Property="Microsoft_Lync_Internal_Utilities_Helpers:SetterValueBindingHelper.PropertyBindingCollection">
  <Setter.Value>
   <Microsoft_Lync_Internal_Utilities_Helpers:SetterValueBindingHelperCollection>
    <Microsoft_Lync_Internal_Utilities_Helpers:SetterValueBindingHelper Property="Background" Binding="{Binding DefaultControlBackgroundBrush, Source={StaticResource ControlColors}}" />
   </Microsoft_Lync_Internal_Utilities_Helpers:SetterValueBindingHelperCollection>
  </Setter.Value>
 </Setter>
 <Setter Property="Template">
  <Setter.Value>                
   <ControlTemplate TargetType="{x:Type controls:ContactSearch}">
    <Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
     <Grid>
      <Grid.RowDefinitions>
       <RowDefinition Height="Auto" />
       <RowDefinition Height="*" />
      </Grid.RowDefinitions>
      <controls:ContactSearchInputBox x:Name="ContactSearchInputBox" Grid.Row="0" MaxResults="{Binding MaxResults, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" SearchType="{Binding SearchType, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" Background="{TemplateBinding Background}" />
      <controls:ContactSearchResultList Grid.Row="1" ItemsSource="{Binding Results, ElementName=ContactSearchInputBox}" ResultsState="{Binding SearchState, ElementName=ContactSearchInputBox}" SearchType="{Binding SearchType, ElementName=ContactSearchInputBox, Mode=TwoWay}" Visibility="{Binding SearchState, ConverterParameter=Cleared, Converter={StaticResource EnumToNotVisibleConverter}, ElementName=ContactSearchInputBox}" ContextualInformation="{TemplateBinding ContextualInformation}" ScrollViewer.HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}" ScrollViewer.VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}" Background="{TemplateBinding Background}" />
     </Grid>
    </Border>
   </ControlTemplate>
  </Setter.Value>
 </Setter>
</Style>

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.