 <p>Assuming that all processing methods have no return value, one possible way is by creating a method that accept <a href="http://msdn.microsoft.com/en-us/library/system.action%28v=vs.110%29.aspx?cs-save-lang=1&amp;cs-lang=csharp#code-snippet-1" rel="nofollow"><code>Action Delegate</code></a> parameter. This method is responsible for setting <code>Processing</code> property and invoking the <code>Action</code> passed as the method parameter :</p> <pre><code>public bool Processing { get; set; } private void Process(Action process) { Processing = true; process(); Processing = false; } public void Load() { //Logic to load the data } public void Save() { //Logic to save the data } </code></pre> <p>Example usage :</p> <pre><code>//pass 'Load' method as parameter to load data : Process(Load); //pass 'Save' method as parameter to save data : Process(Save); </code></pre> <p>Though, I haven't verified my self whether <code>Action</code> delegate is supported in WP 8.1 universal apps, so it will be great to hear from you.</p>