 <p>This may not work in your scenario, but you can invoke a method from a binding using an ObjectDataProvider. Here's a quick example:</p> <pre><code>&lt;Window.Resources&gt; &lt;local:StringToDoubleConverter x:Key="stringToDouble" /&gt; &lt;local:MyObject x:Key="objInstance" /&gt; &lt;ObjectDataProvider x:Key="odp" ObjectInstance="{StaticResource objInstance}" ObjectMethod="MyMethod" &gt; &lt;ObjectDataProvider.MethodParameters&gt; &lt;sys:Double&gt;0&lt;/sys:Double&gt; &lt;/ObjectDataProvider.MethodParameters&gt; &lt;/ObjectDataProvider&gt; &lt;/Window.Resources&gt; </code></pre> <p>Now, an element in your view, say a TextBox can bind to the method parameter:</p> <pre><code>&lt;TextBox Text={Binding Source={StaticResource odp}, Path=MethodParameters[0], UpdateSourceTrigger=PropertyChanged, Converter={StaticResource stringToDouble}} /&gt; </code></pre> <p>The method return value can then be used in a binding elsewhere:</p> <pre><code>&lt;Label Content="{Binding Source={StaticResource odp}}" ContentStringFormat="Method returned: {0}" /&gt; </code></pre> <p>Again, this may not work in your scenario, but it does illustrate a way to pass a parameter to a method and use the return value entirely in XAML. Here's a resource for more information: <a href="http://bea.stollnitz.com/blog/?p=22" rel="nofollow">http://bea.stollnitz.com/blog/?p=22</a></p>