wpf - AdornedElementPlaceholder not working: validation borders disappear on changing the tab -


i have various text boxes in application, have used red border validate data being entered. problem when change tabs red border disappears. trying apply adornedelementplaceholder in styles file textboxes can adapt behaviour. have tried below mentioned code line of code in bold (adornedelementplaceholder) not working. using wpf , c#. can please help?

    <style x:key="textboxstyle"  targettype="{x:type textbox}" >                 <setter property="width" value="120" />                 <setter property="height" value="25" />                    <setter property="fontfamily" value="verdana"/>                 <setter property="fontsize" value="12"/>                 <setter property="verticalalignment" value="top"/>                 <setter property="template">                     <setter.value>                         <controltemplate targettype="{x:type textboxbase}">                             <border x:name="bg"                          cornerradius="5"                         padding="2"                         background="{templatebinding background}"                         borderbrush="{staticresource normalborderbrush}"                         borderthickness="1" >                        **<adornedelementplaceholder/>**                             </border>                             <controltemplate.triggers>                                 <trigger property="ismouseover" value="true">                                     <setter property="borderbrush"                                                                  targetname="bg" value="#82cafa"/>                                 </trigger>                                 <trigger property="isfocused" value="true">                                     <setter property="borderbrush"                                       targetname="bg" value="#1589ff"/>                                 </trigger>                                 <trigger property="isreadonly" value="true">                                     <setter property="background"                                                           value="#e5e4e2"/>                                 </trigger>                             </controltemplate.triggers>                         </controltemplate>                     </setter.value>                 </setter>                 <setter property="spellcheck.isenabled" value="true" />                 <setter property="language"  value="en-gb" />                 <style.triggers>                     <trigger property="validation.haserror" value="true">                         <setter property="borderbrush" value="{staticresource                            errorbackground}" />                         <setter property="tooltip" value="{binding                          relativesource={relativesource self}, path=                       (validation.errors)[0].errorcontent}"/>                     </trigger>                 </style.triggers>                     </style> 

<style x:key="textboxstyle" targettype="{x:type textbox}">     <setter property="borderbrush" value="{staticresource normalborderbrush}"/>     <setter property="width" value="120"/>     <setter property="height" value="25"/>     <setter property="fontfamily" value="verdana"/>     <setter property="fontsize" value="12"/>     <setter property="verticalalignment" value="top"/>     <setter property="spellcheck.isenabled" value="true"/>     <setter property="language" value="en-gb"/>     <setter property="template">         <setter.value>             <controltemplate targettype="{x:type textboxbase}">                 <border cornerradius="5" padding="2" background="{templatebinding background}"                         borderbrush="{templatebinding borderbrush}" borderthickness="1">                     <scrollviewer x:name="part_contenthost" padding="{templatebinding padding}" focusable="false" horizontalscrollbarvisibility="hidden" verticalscrollbarvisibility="hidden"/>                 </border>             </controltemplate>         </setter.value>     </setter>     <style.triggers>         <trigger property="ismouseover" value="true">             <setter property="borderbrush" value="#82cafa"/>         </trigger>         <trigger property="isfocused" value="true">             <setter property="borderbrush" value="#1589ff"/>         </trigger>         <trigger property="isreadonly" value="true">             <setter property="background" value="#e5e4e2"/>         </trigger>         <trigger property="validation.haserror" value="true">             <setter property="borderbrush" value="{staticresource errorbackground}"/>             <setter property="tooltip" value="{binding relativesource={relativesource self}, path=(validation.errors)[0].errorcontent}"/>         </trigger>     </style.triggers> </style> 

Comments