ContactSearchInputBox style and template
Learn about the style and template for the ContactSearchInputBox 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 Style properties for the ContactSearchInputBox control.
ContactSearchInputBox parts
The following table lists the named parts for the ContactSearchInputBox control.
Part |
Type |
Description |
---|---|---|
ClearButton |
Clears the search string. |
|
SearchHint |
Provides the content of a search hint. |
|
TextSearch |
Use this part to display or edit the search string. |
ContactSearchInputBox states
The following table lists the visual states for the ContactSearchInputBox control.
VisualState Name |
VisualStateGroup Name |
Description |
---|---|---|
SearchInUse |
SearchInUseStates |
The ContactSearchInputBox control is in use. |
SearchNotInUse |
SearchInUseStates |
The ContactSearchInputBox control is not in use. |
Default style and template
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 ContactSearchInputBox control.
<Style x:Key="ContactSearchInputBoxStyle1" TargetType="{x:Type controls:ContactSearchInputBox}">
<Setter Property="Padding" Value="8,6,8,4" />
<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:ContactSearchInputBox}">
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<Rtc_System_Windows:VisualStateManager.VisualStateGroups>
<Rtc_System_Windows:VisualStateGroup x:Name="SearchInUseStates">
<Rtc_System_Windows:VisualStateGroup.Transitions>
<Rtc_System_Windows:VisualTransition GeneratedDuration="00:00:00.2000000" />
</Rtc_System_Windows:VisualStateGroup.Transitions>
<Rtc_System_Windows:VisualState x:Name="SearchInUse">
<Storyboard>
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetName="PART_SearchHint" Storyboard.TargetProperty="(UIElement.Opacity)">
<LinearDoubleKeyFrame KeyTime="00:00:00" Value="0" />
</DoubleAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames BeginTime="00:00:00" Duration="00:00:00.0010000" Storyboard.TargetName="PART_ClearButton" Storyboard.TargetProperty="(UIElement.Visibility)">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<Visibility>Visible</Visibility>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</Rtc_System_Windows:VisualState>
<Rtc_System_Windows:VisualState x:Name="SearchNotInUse" />
</Rtc_System_Windows:VisualStateGroup>
</Rtc_System_Windows:VisualStateManager.VisualStateGroups>
<Grid Margin="{TemplateBinding Padding}">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Border BorderThickness="1" CornerRadius="3" BorderBrush="White">
<Microsoft_Lync_Controls_Internal:WatermarkedTextBox x:Name="PART_TextSearch" AutomationProperties.AutomationId="ContactSearchInputTextBox" AutomationProperties.Name="Contact search input text box" MaxLength="256" Watermark="{Binding IsSkillSearchEnabled, Converter={StaticResource SearchInputWatermarkConveter}, RelativeSource={RelativeSource TemplatedParent}}" IsEnabled="{TemplateBinding IsSignedIn}" Height="26" BorderThickness="1" BorderBrush="{Binding ContactSearchBorderBrush, Source={StaticResource ControlColors}}" Background="{Binding ContactSearchBackgroundBrush, Source={StaticResource ControlColors}}" Padding="8,0,31,0" Style="{StaticResource GlobalTextBoxSizeStyle.Standard}" Foreground="{Binding GlobalTextColor_Dark, Source={StaticResource ControlColors}}">
<ToolTipService.ToolTip>
<ToolTip Style="{StaticResource DefaultToolTipStyle}" Content="{Binding Resources.SearchInputNameTooltip, Source={StaticResource ResourcesWrapper}}" />
</ToolTipService.ToolTip>
</Microsoft_Lync_Controls_Internal:WatermarkedTextBox>
</Border>
<Microsoft_Lync_Controls_Internal:HelpTextButton x:Name="PART_ClearButton" Style="{StaticResource SearchCancelButtonStyle}" HorizontalAlignment="Right" VerticalAlignment="Center" Height="24" Width="23" Margin="2" IsEnabled="{TemplateBinding IsSignedIn}" Visibility="Collapsed">
<ToolTipService.ToolTip>
<ToolTip Style="{StaticResource DefaultToolTipStyle}" Content="{Binding Resources.SearchInputCloseButtonTooltip, Source={StaticResource ResourcesWrapper}}" />
</ToolTipService.ToolTip>
<ContentControl HorizontalAlignment="Left" IsHitTestVisible="False" Style="{StaticResource IconStyle.CloseSearch}" />
</Microsoft_Lync_Controls_Internal:HelpTextButton>
<ContentControl x:Name="PART_SearchHint" Margin="0,0,4,0" HorizontalAlignment="Right" IsHitTestVisible="False" Style="{StaticResource IconStyle.Search}" />
<StackPanel Grid.Row="1" Orientation="Horizontal" Height="26">
<Microsoft_Lync_Controls_Internal:EnterEnabledRadioButton Style="{StaticResource ListFilterRadioButtonStyle}" Content="{Binding Resources.SearchInputFilterName, Converter={StaticResource StringToAcceleratorConverter}, Source={StaticResource ResourcesWrapper}}" AutomationProperties.AutomationId="NameSearchButton" IsEnabled="{TemplateBinding IsSignedIn}" IsChecked="{Binding SearchType, ConverterParameter=Name, Converter={StaticResource EnumToBoolConverter}, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" Margin="0,4,0,4">
<ToolTipService.ToolTip>
<ToolTip Style="{StaticResource DefaultToolTipStyle}" Content="{Binding Resources.SearchInputNameButtonTooltip, Source={StaticResource ResourcesWrapper}}" />
</ToolTipService.ToolTip>
</Microsoft_Lync_Controls_Internal:EnterEnabledRadioButton>
<Microsoft_Lync_Controls_Internal:EnterEnabledRadioButton Style="{StaticResource ListFilterRadioButtonStyle}" Content="{Binding Resources.SearchInputFilterSkill, Converter={StaticResource StringToAcceleratorConverter}, Source={StaticResource ResourcesWrapper}}" AutomationProperties.AutomationId="KeywordSearchButton" IsEnabled="{TemplateBinding IsSignedIn}" IsChecked="{Binding SearchType, ConverterParameter=Skill, Converter={StaticResource EnumToBoolConverter}, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" Visibility="{Binding IsSkillSearchEnabled, Converter={StaticResource BooleanToVisibilityConverter}, RelativeSource={RelativeSource TemplatedParent}}">
<ToolTipService.ToolTip>
<ToolTip Style="{StaticResource DefaultToolTipStyle}" Content="{Binding Resources.SearchInputSkillButtonTooltip, Source={StaticResource ResourcesWrapper}}" />
</ToolTipService.ToolTip>
</Microsoft_Lync_Controls_Internal:EnterEnabledRadioButton>
</StackPanel>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>