<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Ivo Manolov's Blog : Tips'n'tricks</title><link>http://blogs.msdn.com/ivo_manolov/archive/tags/Tips_2700_n_2700_tricks/default.aspx</link><description>Tags: Tips'n'tricks</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>UI Scaling (UI Zooming) with WPF</title><link>http://blogs.msdn.com/ivo_manolov/archive/2007/10/05/ui-scaling-ui-zooming-with-wpf.aspx</link><pubDate>Fri, 05 Oct 2007 22:32:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:5299362</guid><dc:creator>ivom</dc:creator><slash:comments>10</slash:comments><comments>http://blogs.msdn.com/ivo_manolov/comments/5299362.aspx</comments><wfw:commentRss>http://blogs.msdn.com/ivo_manolov/commentrss.aspx?PostID=5299362</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;WPF enables the application developer to apply arbitrary transforms to every UI element. This can be used to create &lt;I&gt;&lt;SPAN style="FONT-STYLE: italic"&gt;&lt;STRONG&gt;dynamically scalable/zoomable UIs&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/I&gt;, enabling the end-user to scale the user interface of the application.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Pulling off a dynamically scalable/zoomable UI is prohibitively difficult (and thus practically impossible) to do in classic Win32 (and by extension - WinForms) and DHTML as well as other popular GUI toolkits such as AWT, Swing, QT, etc. It is, however, remarkably easy to do in WPF. Here’s how:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%"&gt;&lt;SPAN&gt;1.&lt;FONT size=1&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;First, you need to give to the user a way to control the scale factor. A &lt;/FONT&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/ms743587.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/ms743587.aspx"&gt;&lt;FONT face=Calibri color=#0000ff&gt;Slider control&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt; is the natural choice for that&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: rgb(217,217,217) 0% 50%; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 0.25in; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0in; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue"&gt;&lt;SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;SPAN style="COLOR: rgb(163,21,21)"&gt;Slider&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;x:Name&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;uiScaleSlider&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;ToolTip&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;Determines the UI scale factor.&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;Value&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;1&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;Minimum&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;0.1&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;Maximum&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;4&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red"&gt;&lt;SPAN&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;...&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue"&gt;&lt;SPAN&gt;/&amp;gt; &lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.25in; LINE-HEIGHT: normal"&gt;&lt;FONT face="Courier New" color=#0000ff size=3&gt;&lt;SPAN style="FONT-SIZE: 12pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;SPAN&gt;2.&lt;FONT size=1&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;Next, define a &lt;/FONT&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/system.windows.frameworkelement.layouttransform.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.windows.frameworkelement.layouttransform.aspx"&gt;&lt;FONT face=Calibri color=#0000ff&gt;LayoutTransform&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt; for the FrameworkElement you intend to scale (this is typically the top-level panel that contains all of your UI). The LayoutTransform needs to be a &lt;/FONT&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/system.windows.media.scaletransform.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.windows.media.scaletransform.aspx"&gt;&lt;FONT face=Calibri color=#0000ff&gt;ScaleTransform&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%"&gt;&lt;SPAN&gt;3.&lt;FONT size=1&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;Bind the scale factor of the ScaleTransform to the value of the slider control.&lt;FONT size=2&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%"&gt; &lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: rgb(217,217,217) 0% 50%; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 0.25in; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0in; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue"&gt;&lt;SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;SPAN style="COLOR: rgb(163,21,21)"&gt;DockPanel&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;Grid.Column&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;0&lt;/SPAN&gt;&lt;/FONT&gt;" &lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;Grid.ColumnSpan&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;2&lt;/SPAN&gt;&lt;/FONT&gt;" &lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;LastChildFill&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;True&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;FONT face="Courier New"&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;SPAN style="COLOR: rgb(163,21,21)"&gt;DockPanel.LayoutTransform&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;SPAN style="COLOR: rgb(163,21,21)"&gt;ScaleTransform&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;FONT color=#a31515&gt;&lt;SPAN style="COLOR: rgb(163,21,21)"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;CenterX&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;0&lt;/SPAN&gt;&lt;/FONT&gt;" &lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;CenterY&lt;/SPAN&gt;&lt;/FONT&gt;="&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;0&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;ScaleX&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;{Binding ElementName=uiScaleSlider,Path=Value}&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#ff0000&gt;&lt;SPAN style="COLOR: red"&gt;ScaleY&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;{Binding ElementName=uiScaleSlider,Path=Value}&lt;/SPAN&gt;&lt;/FONT&gt;"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;SPAN style="COLOR: rgb(163,21,21)"&gt;DockPanel.LayoutTransform&lt;/SPAN&gt;&lt;/FONT&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;...&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue"&gt;&lt;SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;SPAN style="COLOR: rgb(163,21,21)"&gt;DockPanel&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 10pt 0.5in; TEXT-INDENT: -0.25in"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;SPAN&gt;4.&lt;FONT size=1&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;Finally, provide a way for the user to reset the scaling factor back to 1 or 100%. One way to do that is to do that is to define a double-click handler for your Scale control, which resets the scale factor:&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: rgb(217,217,217) 0% 50%; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 0.25in; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0in; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue"&gt;&lt;SPAN&gt;public&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;partial&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Window1&lt;/SPAN&gt;&lt;/FONT&gt; : System.Windows.&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Window &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;/FONT&gt; Window1()&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;InitializeComponent();&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;B&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;uiScaleSlider.MouseDoubleClick += &lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;B&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;MouseButtonEventHandler&lt;/SPAN&gt;&lt;/FONT&gt;(RestoreScalingFactor);&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt; 
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;B&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt;&lt;/FONT&gt; RestoreScalingFactor(&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt;&lt;/FONT&gt; sender, &lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;MouseButtonEventArgs&lt;/SPAN&gt;&lt;/FONT&gt; args)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;B&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;((&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Slider&lt;/SPAN&gt;&lt;/FONT&gt;)sender).Value = 1.0;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt; 
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Here are the results:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;A href="http://blogs.msdn.com/blogfiles/ivo_manolov/WindowsLiveWriter/UIScalingUIZoomingwithWPF_F934/image_2.png"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=314 alt=image src="http://blogs.msdn.com/blogfiles/ivo_manolov/WindowsLiveWriter/UIScalingUIZoomingwithWPF_F934/image_thumb.png" width=204 border=0&gt;&lt;/A&gt; &lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt" mce_keep="true"&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Note that because of the use of &lt;A href="http://msdn2.microsoft.com/en-us/library/system.windows.frameworkelement.layouttransform.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.windows.frameworkelement.layouttransform.aspx"&gt;&lt;FONT color=#0000ff&gt;LayoutTransform&lt;/FONT&gt;&lt;/A&gt;, the original layout of the window is preserved. All of elements of the UI are within reach and completely usable regardless of the current scale factor. &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;H1 style="MARGIN: 15pt 0in 2pt"&gt;&lt;B&gt;&lt;FONT face=Calibri size=5&gt;&lt;SPAN style="FONT-SIZE: 16pt; LINE-HEIGHT: 115%"&gt;Adding mouse wheel support&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/H1&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Several existing WPF applications (e.g. &lt;A href="http://www.microsoft.com/expression/products/overview.aspx?key=blend" mce_href="http://www.microsoft.com/expression/products/overview.aspx?key=blend"&gt;&lt;FONT color=#0000ff&gt;Microsoft Expression Blend&lt;/FONT&gt;&lt;/A&gt;) already expose such UI scaling capability. Some use the mouse wheel to control the scale factor. &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;Here’s one possible strategy of using the mouse-wheel. Let’s assume the following UI contract:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=LightShading-Accent1 style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: auto auto auto 0.5in; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse" cellSpacing=0 cellPadding=0 border=1 class="LightShading-Accent1"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" style="PADDING-RIGHT: 5.4pt; BORDER-TOP: rgb(79,129,189) 1pt solid; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(240,240,240); PADDING-BOTTOM: 0in; WIDTH: 96.75pt; PADDING-TOP: 0in; BORDER-BOTTOM: rgb(79,129,189) 1pt solid; BACKGROUND-COLOR: transparent; BORDER-RIGHT-COLOR: rgb(240,240,240)" vAlign=top width=129&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;B&gt;&lt;FONT face=Calibri color=#365f91 size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: rgb(54,95,145)"&gt;Gesture &lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/TD&gt;
&lt;TD class="" style="PADDING-RIGHT: 5.4pt; BORDER-TOP: rgb(79,129,189) 1pt solid; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(240,240,240); PADDING-BOTTOM: 0in; WIDTH: 138.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: rgb(79,129,189) 1pt solid; BACKGROUND-COLOR: transparent; BORDER-RIGHT-COLOR: rgb(240,240,240)" vAlign=top width=185&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;B&gt;&lt;FONT face=Calibri color=#365f91 size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: rgb(54,95,145)"&gt;UI meaning &lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(240,240,240); BACKGROUND: rgb(211,223,238) 0% 50%; BORDER-BOTTOM-COLOR: rgb(240,240,240); PADDING-BOTTOM: 0in; WIDTH: 96.75pt; BORDER-TOP-COLOR: rgb(240,240,240); PADDING-TOP: 0in; BORDER-RIGHT-COLOR: rgb(240,240,240); -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" vAlign=top width=129 bgColor=#3fff00&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;B&gt;&lt;FONT face=Calibri color=#365f91 size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: rgb(54,95,145)"&gt;CTRL + Wheel up &lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/TD&gt;
&lt;TD class="" style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(240,240,240); BACKGROUND: rgb(211,223,238) 0% 50%; BORDER-BOTTOM-COLOR: rgb(240,240,240); PADDING-BOTTOM: 0in; WIDTH: 138.9pt; BORDER-TOP-COLOR: rgb(240,240,240); PADDING-TOP: 0in; BORDER-RIGHT-COLOR: rgb(240,240,240); -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" vAlign=top width=185 bgColor=#3fff00&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;FONT face=Calibri color=#365f91 size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: rgb(54,95,145)"&gt;Scale up (i.e. zoom in) &lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(240,240,240); BORDER-BOTTOM-COLOR: rgb(240,240,240); PADDING-BOTTOM: 0in; WIDTH: 96.75pt; BORDER-TOP-COLOR: rgb(240,240,240); PADDING-TOP: 0in; BACKGROUND-COLOR: transparent; BORDER-RIGHT-COLOR: rgb(240,240,240)" vAlign=top width=129&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;B&gt;&lt;FONT face=Calibri color=#365f91 size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: rgb(54,95,145)"&gt;CTRL + Wheel down &lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/TD&gt;
&lt;TD class="" style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(240,240,240); BORDER-BOTTOM-COLOR: rgb(240,240,240); PADDING-BOTTOM: 0in; WIDTH: 138.9pt; BORDER-TOP-COLOR: rgb(240,240,240); PADDING-TOP: 0in; BACKGROUND-COLOR: transparent; BORDER-RIGHT-COLOR: rgb(240,240,240)" vAlign=top width=185&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;FONT face=Calibri color=#365f91 size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: rgb(54,95,145)"&gt;Scale down (i.e. zoom out) &lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(240,240,240); BACKGROUND: rgb(211,223,238) 0% 50%; PADDING-BOTTOM: 0in; WIDTH: 96.75pt; BORDER-TOP-COLOR: rgb(240,240,240); PADDING-TOP: 0in; BORDER-BOTTOM: rgb(79,129,189) 1pt solid; BORDER-RIGHT-COLOR: rgb(240,240,240); -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" vAlign=top width=129 bgColor=#3fff00&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;B&gt;&lt;FONT face=Calibri color=#365f91 size=2&gt;&lt;SPAN style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: rgb(54,95,145)"&gt;CTRL + Wheel click &lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/B&gt;&lt;/TD&gt;
&lt;TD class="" style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: rgb(240,240,240); BACKGROUND: rgb(211,223,238) 0% 50%; PADDING-BOTTOM: 0in; WIDTH: 138.9pt; BORDER-TOP-COLOR: rgb(240,240,240); PADDING-TOP: 0in; BORDER-BOTTOM: rgb(79,129,189) 1pt solid; BORDER-RIGHT-COLOR: rgb(240,240,240); -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial" vAlign=top width=185 bgColor=#3fff00&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;FONT face=Calibri color=#365f91 size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: rgb(54,95,145)"&gt;Restore scaling factor to 100% &lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;We just intercept the appropriate events in the &lt;A class="" href="http://msdn2.microsoft.com/en-us/library/system.windows.uielement.onpreviewmousewheel.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.windows.uielement.onpreviewmousewheel.aspx"&gt;OnPreviewMouseWheel&lt;/A&gt; and &lt;A class="" href="http://msdn2.microsoft.com/en-us/library/system.windows.uielement.onpreviewmousedown.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.windows.uielement.onpreviewmousedown.aspx"&gt;OnPreviewMouseDown&lt;/A&gt; methods of the main window as follows:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: rgb(217,217,217) 0% 50%; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 0.25in; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0in; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue"&gt;&lt;SPAN&gt;public&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;partial&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Window1&lt;/SPAN&gt;&lt;/FONT&gt; : System.Windows.&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Window &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New"&gt;&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt; 
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;/FONT&gt; Window1()&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;...&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;...&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;protected override void&lt;/SPAN&gt;&lt;/FONT&gt; OnPreviewMouseWheel(&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;MouseWheelEventArgs&lt;/SPAN&gt;&lt;/FONT&gt; args)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;base&lt;/SPAN&gt;&lt;/FONT&gt;.OnPreviewMouseWheel(args);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;&lt;/FONT&gt; (&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Keyboard&lt;/SPAN&gt;&lt;/FONT&gt;.IsKeyDown(&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Key&lt;/SPAN&gt;&lt;/FONT&gt;.LeftCtrl) ||&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Keyboard&lt;/SPAN&gt;&lt;/FONT&gt;.IsKeyDown(&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Key&lt;/SPAN&gt;&lt;/FONT&gt;.RightCtrl))&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;uiScaleSlider.Value += (args.Delta &amp;gt; 0) ? 0.1 : -0.1;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;protected override void&lt;/SPAN&gt;&lt;/FONT&gt; OnPreviewMouseDown(&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;MouseButtonEventArgs&lt;/SPAN&gt;&lt;/FONT&gt; args)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;base&lt;/SPAN&gt;&lt;/FONT&gt;.OnPreviewMouseDown(args);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;&lt;/FONT&gt; (&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Keyboard&lt;/SPAN&gt;&lt;/FONT&gt;.IsKeyDown(&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Key&lt;/SPAN&gt;&lt;/FONT&gt;.LeftCtrl) ||&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Keyboard&lt;/SPAN&gt;&lt;/FONT&gt;.IsKeyDown(&lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;Key&lt;/SPAN&gt;&lt;/FONT&gt;.RightCtrl))&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;&lt;/FONT&gt; (args.MiddleButton == &lt;FONT color=#2b91af&gt;&lt;SPAN style="COLOR: rgb(43,145,175)"&gt;MouseButtonState&lt;/SPAN&gt;&lt;/FONT&gt;.Pressed)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;RestoreScalingFactor(uiScaleSlider, args);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=Code style="BACKGROUND: rgb(217,217,217) 0% 50%; MARGIN: 0in 0in 0pt; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"&gt;&lt;FONT face="Courier New" size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=2&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%"&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=5299362" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/ivo_manolov/attachment/5299362.ashx" length="236039" type="application/zip" /><category domain="http://blogs.msdn.com/ivo_manolov/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/ivo_manolov/archive/tags/Tips_2700_n_2700_tricks/default.aspx">Tips'n'tricks</category></item></channel></rss>