wpf - How to change settings of a base style from derived settings using BasedOn property -


i have simple style controltemplate orangebutton, , have created style orangebutton2 basedon orangebutton. trying change border properties, wpf doesn't render new border style defined in orangebutton2. tried opposite also, orangebutton based on orangebutton2, no change. idea happening here, , how make correct.

   <style x:key="orangebutton" targettype="button" >       <setter property="overridesdefaultstyle" value="true"/>       <setter property="margin" value="2"/>       <setter property="fontfamily" value="verdana"/>       <setter property="fontsize" value="11px"/>       <setter property="fontweight" value="bold"/>       <setter property="template">         <setter.value>           <controltemplate targettype="button">             <border name="border"                borderthickness="1"                padding="4,2"                borderbrush="darkgray"                cornerradius="3"                background="{templatebinding background}">               <grid >                 <contentpresenter horizontalalignment="center"                                   verticalalignment="center" name="contentshadow" style="{staticresource shadowstyle}">                 </contentpresenter>                 <contentpresenter horizontalalignment="center" verticalalignment="center" name="content"/>               </grid>             </border>                           </controltemplate>         </setter.value>       </setter>     </style>      <style x:key="orangebutton2" targettype="button" basedon="{staticresource orangebutton}">       <setter property="borderbrush" value="red"></setter>       <setter property="borderthickness" value="1"></setter>     </style>     </window.resources>    <stackpanel horizontalalignment="center">     <button style="{staticresource orangebutton2}">hello</button>       </stackpanel> 

it's not enough define borderbrush, have use it. in controltemplate change

<border name="border"     borderthickness="1"     padding="4,2"     borderbrush="darkgray"     cornerradius="3"     background="{templatebinding background}"> 

to

<border name="border"     borderthickness="{templatebinding borderthickness}"     padding="4,2"     borderbrush="{templatebinding borderbrush}"     cornerradius="3"     background="{templatebinding background}"> 

this use value define style.


Comments

Popular posts from this blog

linux - Does gcc have any options to add version info in ELF binary file? -

android - send complex objects as post php java -

charts - What graph/dashboard product is facebook using in Dashboard: PUE & WUE -