This is my style code.
<Style x:Key="RequiredTextBoxForMultiple" TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TextBox}">
<Grid>
<ScrollViewer SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" x:Name="PART_ContentHost"/>
<TextBlock x:Name="reqText" Text="<multiple>" removed="Pink" Opacity="0.5" Visibility="Hidden" FontStyle="Italic"></TextBlock>
</Grid>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsFocused" Value="False" />
<Condition Property="Text" Value="{x:Null}" />
</MultiTrigger.Conditions>
<Setter Property="Visibility" TargetName="reqText" Value="Visible" />
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
& this is my textbox.
<TextBox x:Name="txtBoxCustomTitle"
Style="{StaticResource RequiredTextBoxForMultiple}"
Grid.Column="4" Grid.Row="2"
Margin="17,3,0,0"
Text="{Binding CustomTitleText}" MaxLength="80"
Width="150"
Grid.ColumnSpan="3"/>
The problem lies in the style's trigger condition
<Condition Property="Text" Value="{x:Null}" />
It wont work whenever my CustomTitleText property is null, When I changed my style trigger condition to the empty string
<Condition Property="Text" Value="" />
it worked fine for the null as it considered null as empty string but I dont want that. I don't understand why its not considering null as a null in the trigger condition.
I'm eagerly waiting for your suggestion, Thanks in advance.