XAML/WPF focus textblock -
are textblocks focusable in wpf? want change background color of textblock if 1 focused, want in xaml. have now. bunch of textboxes in stackpanel. can xaml target non focus or base state, when try add trigger, background not change on focus. code below:
<style x:key="queuelisttextblocks" targettype="textblock"> <setter property="background" value="#027802"></setter> <setter property="foreground" value="white"></setter> <setter property="padding" value="10,5"></setter> <setter property="margin" value="5,2,5,0"></setter> <setter property="fontsize" value="14"></setter> <setter property="focusable" value="true"/> <setter property="cursor" value="hand"></setter> <!-- trigger--> <style.triggers> <!--does not pick isfucused state--alternative?--> <trigger property="isfocused" value="true"> <setter property="background" value="blue"></setter> <setter property="fontsize" value="18"></setter> <setter property="foreground" value="orange"></setter> </trigger> </style.triggers> <!--<setter property="background" value="white" />--> </style>
i tried style , works perfectly. textblocks in window change pressing tab key. i'm using .net 4.0 framework.
this xaml of window:
<window x:class="wpfapplication1.mainwindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" title="mainwindow" height="350" width="525"> <window.resources> <style targettype="textblock" x:key="textblockstyle"> <setter property="background" value="#027802"></setter> <setter property="foreground" value="white"></setter> <setter property="padding" value="10,5"></setter> <setter property="margin" value="5,2,5,0"></setter> <setter property="fontsize" value="14"></setter> <setter property="focusable" value="true"/> <setter property="cursor" value="hand"></setter> <!-- trigger--> <style.triggers> <!--does not pick isfucused state-alternative?--> <trigger property="isfocused" value="true"> <setter property="background" value="blue"></setter> <setter property="fontsize" value="18"></setter> <setter property="foreground" value="orange"></setter> </trigger> </style.triggers> <!--<setter property="background" value="white" />--> </style> </window.resources> <stackpanel orientation="vertical"> <textblock text="one" style="{staticresource textblockstyle}" /> <textblock text="two" style="{staticresource textblockstyle}" /> <textblock text="three" style="{staticresource textblockstyle}" /> <textblock text="four" style="{staticresource textblockstyle}" /> <textblock text="five" style="{staticresource textblockstyle}" /> </stackpanel> </window>
i hope helps
Comments
Post a Comment