Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6039653
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 23, 20262026-05-23T06:24:03+00:00 2026-05-23T06:24:03+00:00

I have two viewmodel classes called ChangePwdViewModel.cs and ExpiringPwdViewModel.cs . ChangPwd.xaml binds to ChangePwdViewModel

  • 0

I have two viewmodel classes called ChangePwdViewModel.cs and ExpiringPwdViewModel.cs.
ChangPwd.xaml binds to ChangePwdViewModel and ExpiringPwd.xaml binds to ExpiringPwdViewModel.

Both have the property as below.

private string _message;
public string Message
{
    get { return _message; }
    set { _message = value; OnPropertyChanged("Message"); }
}

In each class, there’s a function called ValidatePwd() to validate the new password.

In this function, Message property is updated.
Eg.

if (IsAlphaNumeric(this.NewPassword) == false || IsAlphaNumeric(this.CfmPassword) == false)
{
    this.Message = "Invalid new password, only characters and numbers are accepted, password must contain at least one character and one number";
    this.ResetPasswordFields();
    return false;
}

I want to create a common class to write this function and used by two viewmodel. But, How can I update the Message Property of the viewmodels from this class?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-23T06:24:04+00:00Added an answer on May 23, 2026 at 6:24 am

    How about putting it in a base class:

    class ViewModelBase
    {
        private string _message;
        public string Message 
        {
            get { return _message; }
            set { _message = value; OnPropertyChanged("Message"); }
        }
    
        public bool VerifyPassword(string newPassword)
        {
            ....
        }
    }
    
    class ChangePwdViewModel : ViewModelBase
    {
    }
    
    class ExpiringPwdViewModel : ViewModelBase
    {
    }
    

    Update:

    If you can’t use a base class because your view models already have a base class then you could use an interface as suggested by others. However this means that you will still have to implement the interface in all your view model classes so you don’t gain that much in terms of avoiding multiple implementations (except that you have a contract for your view models then which is usually a good thing to have).

    You can achieve some kind of “multiple inheritance” in C# by using a tool like Dynamic Proxy which allows you to create mixins. So you could implement the Message property and password verification in one class and then create a mixin proxy which merges the view model with that implementation. It’s not as nice as you will have to create all your view model instances via the proxy generator but it can be made to work. Have a look at this tutorial if it sounds like an option for you.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have two classes called Company and Address . I have created a ViewModel
I have two ViewModel classes : PersonViewModel and PersonSearchListViewModel. One of the fields PersonViewModel
I have two simple Model classes and a ViewModel... public class GridItem { public
I have two classes (MVC view model) which inherits from one abstract base class.
Have two folders with approx. 150 java property files. In a shell script, how
I have two update panels on a page. And I want to update both
I have two queries that find both the Zip codes, and the States for
I have two actions, one that accepts a ViewModel and one that accepts two
I have two resources Dock and Undock in my View which is a UserControl(Dock.xaml),
If I have two nearly identical classes Animal and AnimalViewModel and an expression tree

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.