<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-7577421612120825312.post7031000487453171988..comments</id><updated>2012-01-28T23:24:30.995Z</updated><category term='Personal'/><category term='&quot;M&quot;'/><category term='Windows 8'/><category term='.Net'/><category term='Math'/><category term='Windows'/><category term='PDC 2009'/><category term='XNA'/><category term='HymnSheet'/><category term='VSTO'/><category term='Book Reviews'/><category term='OData'/><category term='Fiddler'/><category term='Links'/><category term='Software'/><category term='Project Euler'/><category term='Windows Azure'/><category term='WP7Comp'/><category term='LINQ'/><category term='PDC 2008'/><category term='Build Windows'/><category term='UIAutomation'/><category term='REST'/><category term='How to'/><category term='Jobs'/><category term='PDC 2010'/><category term='WP7'/><category term='COM'/><category term='Humour'/><category term='Algorithms'/><category term='C# 5'/><category term='Freelancing'/><category term='Blogging'/><category term='C#'/><category term='WinRT'/><category term='Competition'/><category term='Seaturtle Software'/><category term='WCF'/><category term='Functional Programming'/><category term='Agile'/><category term='Bugs'/><category term='SQL Server Modelling'/><category term='NHibernate'/><category term='Protocol Buffers'/><category term='VB.Net'/><category term='Recipes'/><category term='ASP.Net'/><category term='Training'/><category term='WPF'/><category term='Silverlight'/><category term='Direct UI'/><category term='Excel'/><category term='C# 4.0'/><title type='text'>Comments on Functional Fun: WPF PasswordBox and Data binding</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.functionalfun.net/feeds/7031000487453171988/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default?start-index=26&amp;max-results=25'/><author><name>Sam</name><uri>http://www.blogger.com/profile/01345100698738870730</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_Blokl_3SWiA/TLnxX6u-kVI/AAAAAAAAAxM/4G8IFTrvgGc/S220/Portrait+Cropped.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>87</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-8101792530296743935</id><published>2012-01-28T23:24:30.996Z</published><updated>2012-01-28T23:24:30.996Z</updated><title type='text'>Thanks very much for this excellent post (realizin...</title><content type='html'>Thanks very much for this excellent post (realizing that it&amp;#39;s 3.5 years old... the Internets that keep on giving), this was exactly what I needed.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/8101792530296743935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/8101792530296743935'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1327793070996#c8101792530296743935' title=''/><author><name>RickE</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-14510180'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-4343261048152487736</id><published>2011-12-03T14:25:47.581Z</published><updated>2011-12-03T14:25:47.581Z</updated><title type='text'>Hi,

Thank you for this usefull piece of code.

Bo...</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;Thank you for this usefull piece of code.&lt;br /&gt;&lt;br /&gt;BoundPassword, BindPassword and UpdatingPassword should be respectilvly named BoundPasswordProperty, BindPasswordProperty and UpdatingPasswordProperty to avoid the &amp;quot;dependency property missing&amp;quot; problem in xaml.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/4343261048152487736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/4343261048152487736'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1322922347581#c4343261048152487736' title=''/><author><name>Filimindji</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1895003534'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-1393173254753865499</id><published>2011-11-03T15:15:35.358Z</published><updated>2011-11-03T15:15:35.358Z</updated><title type='text'>That was an excellent solution!</title><content type='html'>That was an excellent solution!</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/1393173254753865499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/1393173254753865499'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1320333335358#c1393173254753865499' title=''/><author><name>Reckface</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-960187349'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-7263438681491459462</id><published>2011-10-24T10:27:08.604+01:00</published><updated>2011-10-24T10:27:08.604+01:00</updated><title type='text'>My comment that &amp;quot;I&amp;#39;ve corrected it&amp;quot; ...</title><content type='html'>My comment that &amp;quot;I&amp;#39;ve corrected it&amp;quot; was aimed at Ross, not Jared :-)&lt;br /&gt;&lt;br /&gt;So, I&amp;#39;ve not made any changes to the way PasswordBox works with the NavigationService. If I understand Jared correctly, he solved his problem by stashing the value of the passsword box away before the NavigationService was invoked, and then restored it when his ViewModel was reloaded.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/7263438681491459462'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/7263438681491459462'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1319448428604#c7263438681491459462' title=''/><author><name>Samuel Jack</name><uri>http://blog.functionalfun.net</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-14510180'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-446516373633435751</id><published>2011-10-24T10:12:06.924+01:00</published><updated>2011-10-24T10:12:06.924+01:00</updated><title type='text'>Hi! Great solution. I like it very much. Is there ...</title><content type='html'>Hi! Great solution. I like it very much. Is there any way to also add some Binding.ValidationRules to it?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/446516373633435751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/446516373633435751'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1319447526924#c446516373633435751' title=''/><author><name>Florin B</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-960187349'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-8849425704299418405</id><published>2011-10-22T07:12:53.755+01:00</published><updated>2011-10-22T07:12:53.755+01:00</updated><title type='text'>Were you advised not to reference System.Windows.C...</title><content type='html'>Were you advised not to reference System.Windows.Controls in the ViewModel itself? That is a good principle to try and follow in general. You will, of course need to make use of those controls in your View (in Xaml). But your ViewModel should only concern itself with behaviour, not with how things look. It should communicate with the View almost exclusively using data binding and ICommands.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/8849425704299418405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/8849425704299418405'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1319263973755#c8849425704299418405' title=''/><author><name>Samuel Jack</name><uri>http://blog.functionalfun.net</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-960187349'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-5190340225892006618</id><published>2011-10-21T22:04:45.324+01:00</published><updated>2011-10-21T22:04:45.324+01:00</updated><title type='text'>I have been advised not to use System.Windows.Cont...</title><content type='html'>I have been advised not to use System.Windows.Controls when you are trying to follow MVVM pattern. Do you agree with this statement? Since I am still learning MVVM pattern, I don’t know why.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/5190340225892006618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/5190340225892006618'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1319231085324#c5190340225892006618' title=''/><author><name>Shai</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-14510180'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-7372565760606117643</id><published>2011-10-18T13:29:57.354+01:00</published><updated>2011-10-18T13:29:57.354+01:00</updated><title type='text'>hi, 
awsome article, but where and how is this cor...</title><content type='html'>hi, &lt;br /&gt;awsome article, but where and how is this corrected? i just copied your code and the NavigationService still blanks my password.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/7372565760606117643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/7372565760606117643'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1318940997354#c7372565760606117643' title=''/><author><name>Or Gal</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1895003534'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-5063830918969137624</id><published>2011-08-10T16:35:12.240+01:00</published><updated>2011-08-10T16:35:12.240+01:00</updated><title type='text'>Good stuff. One small change though, in your OnBou...</title><content type='html'>Good stuff. One small change though, in your OnBoundPasswordChanged method, you should be null-checking &amp;quot;box&amp;quot; and checking if GetBindPassword of box is true.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/5063830918969137624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/5063830918969137624'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1312990512240#c5063830918969137624' title=''/><author><name>Jakub</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-960187349'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-8798601482233017710</id><published>2011-08-03T16:16:26.980+01:00</published><updated>2011-08-03T16:16:26.980+01:00</updated><title type='text'>Man You Rock Like Hell. ( Extremly awsome )
Thank ...</title><content type='html'>Man You Rock Like Hell. ( Extremly awsome )&lt;br /&gt;Thank You So Much !</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/8798601482233017710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/8798601482233017710'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1312384586980#c8798601482233017710' title=''/><author><name>Ashish</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-960187349'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-3829812956265519641</id><published>2011-07-18T07:21:33.238+01:00</published><updated>2011-07-18T07:21:33.238+01:00</updated><title type='text'>Can any One Provide me a Database Password  Value ...</title><content type='html'>Can any One Provide me a Database Password  Value Binding Steps Using this in c#</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/3829812956265519641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/3829812956265519641'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1310970093238#c3829812956265519641' title=''/><author><name>Sanajy</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-960187349'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-6473717093001682693</id><published>2011-06-23T22:40:43.384+01:00</published><updated>2011-06-23T22:40:43.384+01:00</updated><title type='text'>Do I have your permission to use this code in my s...</title><content type='html'>Do I have your permission to use this code in my solution and modify it if necessary ?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6473717093001682693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6473717093001682693'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1308865243384#c6473717093001682693' title=''/><author><name>Fahad</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-14510180'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-591732150031066486</id><published>2011-05-10T15:24:39.623+01:00</published><updated>2011-05-10T15:24:39.623+01:00</updated><title type='text'>As just a quick note, I believe you get a false po...</title><content type='html'>As just a quick note, I believe you get a false positive error reported by ReShaper 5.1 using this code.&lt;br /&gt;&lt;br /&gt;I think this is fixed in 6 although I&amp;#39;m not in a position to test it at the moment.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/591732150031066486'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/591732150031066486'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1305037479623#c591732150031066486' title=''/><author><name>Michael Hawksworth</name><uri>http://www.blogger.com/profile/00759809736474525828</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://2.bp.blogspot.com/_cHNwKVy487c/S_ukQyuxoFI/AAAAAAAAAWs/biKsFhitypk/S220/075736.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1415976953'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-6052617669221620797</id><published>2011-04-08T22:34:07.516+01:00</published><updated>2011-04-08T22:34:07.516+01:00</updated><title type='text'>I am using this code, but I ran into a problem. I ...</title><content type='html'>I am using this code, but I ran into a problem. I am also using Pages and NavigationService.  Turns out the NavigationService blanks this password.&lt;br /&gt;&lt;br /&gt;So I have a call to the navigation service, and I have to save the password, and replace it afterwards.  Thought I would let you know.&lt;br /&gt;&lt;br /&gt;Here are the details:&lt;br /&gt;WPF NavigationService blanks PasswordBox.Password, which breaks the MVVM PasswordHelper&lt;br /&gt;http://www.rhyous.com/2011/04/08/wpf-navigationservice-blanks-passwordbox-password-which-breaks-the-mvvm-passwordhelper/</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6052617669221620797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6052617669221620797'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1302298447516#c6052617669221620797' title=''/><author><name>Jared</name><uri>http://www.rhyous.com</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-118536220'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-8353354491096932727</id><published>2011-04-02T20:56:34.177+01:00</published><updated>2011-04-02T20:56:34.177+01:00</updated><title type='text'>@Ross,
   Thanks for letting me know - I&amp;#39;ve co...</title><content type='html'>@Ross,&lt;br /&gt;   Thanks for letting me know - I&amp;#39;ve corrected that now.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/8353354491096932727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/8353354491096932727'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1301774194177#c8353354491096932727' title=''/><author><name>Sam</name><uri>http://www.blogger.com/profile/01345100698738870730</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_Blokl_3SWiA/TLnxX6u-kVI/AAAAAAAAAxM/4G8IFTrvgGc/S220/Portrait+Cropped.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-104150628'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-1511690076485884708</id><published>2011-04-02T11:04:45.173+01:00</published><updated>2011-04-02T11:04:45.173+01:00</updated><title type='text'>Just so you know, it looks like a javascript:void(...</title><content type='html'>Just so you know, it looks like a javascript:void(0) somehow worked its way into your code.&lt;br /&gt;&lt;br /&gt;&amp;quot;private static void OnBoundPasswordChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)javascript:void(0)&amp;quot;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/1511690076485884708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/1511690076485884708'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1301738685173#c1511690076485884708' title=''/><author><name>Ross</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1320762257'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-1824270058375132532</id><published>2011-03-20T22:22:24.274Z</published><updated>2011-03-20T22:22:24.274Z</updated><title type='text'>Sam,

Like Ali, i&amp;#39;m not able to use the IDataE...</title><content type='html'>Sam,&lt;br /&gt;&lt;br /&gt;Like Ali, i&amp;#39;m not able to use the IDataError interface to validate the password since then NotifyPropertyChanged isn&amp;#39;t fired in my VM.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/1824270058375132532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/1824270058375132532'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1300659744274#c1824270058375132532' title=''/><author><name>Arie</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1986787609'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-7367213913018484547</id><published>2011-03-02T04:01:36.165Z</published><updated>2011-03-02T04:01:36.165Z</updated><title type='text'>Hi Sam,

very good work!

But how can i bind Valid...</title><content type='html'>Hi Sam,&lt;br /&gt;&lt;br /&gt;very good work!&lt;br /&gt;&lt;br /&gt;But how can i bind ValidationRules?&lt;br /&gt;&lt;br /&gt;Thanks</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/7367213913018484547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/7367213913018484547'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1299038496165#c7367213913018484547' title=''/><author><name>Ali</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-192196132'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-2272292018150611826</id><published>2011-01-21T22:07:29.570Z</published><updated>2011-01-21T22:07:29.570Z</updated><title type='text'>@Zach: I presume you mean &amp;quot;why would you NOT ...</title><content type='html'>@Zach: I presume you mean &amp;quot;why would you NOT just inherit from passwordbox&amp;quot;? &lt;br /&gt;&lt;br /&gt;The reason is composability. If I implemented my extensions by inheriting from PasswordBox, and you also created some extensions by inheriting from PasswordBox, how would Joe Blogs go about using both our extensions?&lt;br /&gt;&lt;br /&gt;However, if we both use attached properties to define the behaviour, Joe Blogs can just give values to both our properties when he uses PasswordBox to activate the behaviours.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/2272292018150611826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/2272292018150611826'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1295647649570#c2272292018150611826' title=''/><author><name>Sam</name><uri>http://www.blogger.com/profile/01345100698738870730</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://1.bp.blogspot.com/_Blokl_3SWiA/TLnxX6u-kVI/AAAAAAAAAxM/4G8IFTrvgGc/S220/Portrait+Cropped.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-104150628'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-6709583734603728309</id><published>2011-01-21T19:58:45.446Z</published><updated>2011-01-21T19:58:45.446Z</updated><title type='text'>Nice article on using attached properties :)

Just...</title><content type='html'>Nice article on using attached properties :)&lt;br /&gt;&lt;br /&gt;Just a quick question though, why would you just inherit from passwordbox and put these extensions of the class in that way. To me it seems that this static class you have is specific to password box and not a general use class of attached properties and functions.&lt;br /&gt;&lt;br /&gt;Thanks!</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6709583734603728309'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6709583734603728309'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1295639925446#c6709583734603728309' title=''/><author><name>zack</name><uri>http://www.blogger.com/profile/17959162140486800826</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1540740114'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-1902506163522907755</id><published>2010-10-22T10:28:04.581+01:00</published><updated>2010-10-22T10:28:04.581+01:00</updated><title type='text'>Hi anonymous, to detect the enter key:
Anonymous:
...</title><content type='html'>Hi anonymous, to detect the enter key:&lt;br /&gt;Anonymous:&lt;br /&gt;Just add this in your xaml:&lt;br /&gt;&amp;lt;PasswordBox KeyDown=&amp;quot;OnKeyDown&amp;quot;&lt;br /&gt;And add this to your xaml.cs: &lt;br /&gt;private void OnKeyDown(object sender, KeyEventArgs e)&lt;br /&gt;{&lt;br /&gt;if (e.Key == Key.Enter)&lt;br /&gt;{&lt;br /&gt;Submit.Focus();&lt;br /&gt;var peer = new ButtonAutomationPeer(Submit);&lt;br /&gt;var invokeProvider = (IInvokeProvider)peer;&lt;br /&gt;invokeProvider.Invoke();&lt;br /&gt;}&lt;br /&gt;}</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/1902506163522907755'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/1902506163522907755'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1287739684581#c1902506163522907755' title=''/><author><name>Paul</name><uri>http://www.blogger.com/profile/05326224323044682260</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1397530741'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-4862749344214970999</id><published>2010-10-22T10:25:42.489+01:00</published><updated>2010-10-22T10:25:42.489+01:00</updated><title type='text'></title><content type='html'>This comment has been removed by the author.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/4862749344214970999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/4862749344214970999'/><author><name>Paul</name><uri>http://www.blogger.com/profile/05326224323044682260</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.contentRemoved' value='true'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1397530741'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-6842561878269570810</id><published>2010-10-21T17:52:18.260+01:00</published><updated>2010-10-21T17:52:18.260+01:00</updated><title type='text'>Hi Sam!
I&amp;#39;m using PasswordBox, but i need dete...</title><content type='html'>Hi Sam!&lt;br /&gt;I&amp;#39;m using PasswordBox, but i need detect the key enter and after execute the validation, any idea?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6842561878269570810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6842561878269570810'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1287679938260#c6842561878269570810' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1306388399'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-2133523886157305298</id><published>2010-10-19T14:17:48.601+01:00</published><updated>2010-10-19T14:17:48.601+01:00</updated><title type='text'>Thanks Sam.. !
it worked just perfect..</title><content type='html'>Thanks Sam.. !&lt;br /&gt;it worked just perfect..</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/2133523886157305298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/2133523886157305298'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1287494268601#c2133523886157305298' title=''/><author><name>neelesh नीलेश</name><uri>http://www.blogger.com/profile/03820284955668207989</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_PC3c8MXmhls/S6C4P5aSQcI/AAAAAAAABWo/3Me63NaGd4U/S220/ln.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1035285309'/></entry><entry><id>tag:blogger.com,1999:blog-7577421612120825312.post-6110018338007934636</id><published>2010-10-03T18:16:21.806+01:00</published><updated>2010-10-03T18:16:21.806+01:00</updated><title type='text'>Wow, how frustrating that it takes 50+ lines of fa...</title><content type='html'>Wow, how frustrating that it takes 50+ lines of fairly complex code to do something so simple.  I&amp;#39;m all for keeping the UI free from C# code, but not at ANY cost.&lt;br /&gt;&lt;br /&gt;To save 2 or 3 lines of code in the UI, you&amp;#39;ll add a ton of code somewhere else???</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6110018338007934636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7577421612120825312/7031000487453171988/comments/default/6110018338007934636'/><link rel='alternate' type='text/html' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html?showComment=1286126181806#c6110018338007934636' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.functionalfun.net/2008/06/wpf-passwordbox-and-data-binding.html' ref='tag:blogger.com,1999:blog-7577421612120825312.post-7031000487453171988' source='http://www.blogger.com/feeds/7577421612120825312/posts/default/7031000487453171988' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1161537577'/></entry></feed>
