Click here to Skip to main content
15,891,427 members
Home / Discussions / C#
   

C#

 
AnswerRe: Issue with accessing object in background thread when converter value updates Pin
Slacker00713-Jul-16 22:45
professionalSlacker00713-Jul-16 22:45 
AnswerRe: Issue with accessing object in background thread when converter value updates Pin
Gerry Schmitz14-Jul-16 5:32
mveGerry Schmitz14-Jul-16 5:32 
GeneralRe: Issue with accessing object in background thread when converter value updates Pin
Imagiv14-Jul-16 6:26
Imagiv14-Jul-16 6:26 
GeneralRe: Issue with accessing object in background thread when converter value updates Pin
Gerry Schmitz14-Jul-16 7:06
mveGerry Schmitz14-Jul-16 7:06 
Questionc# network programming(Server /Client ) Pin
Mostafa_Hosseini13-Jul-16 6:44
Mostafa_Hosseini13-Jul-16 6:44 
AnswerRe: c# network programming(Server /Client ) Pin
Super Lloyd13-Jul-16 13:17
Super Lloyd13-Jul-16 13:17 
Question[SOLVED] System.AccessViolationException When Calling Dll Function Again Pin
Django_Untaken13-Jul-16 5:39
Django_Untaken13-Jul-16 5:39 
AnswerRe: System.AccessViolationException When Calling Dll Function Again Pin
Dave Kreskowiak13-Jul-16 5:55
mveDave Kreskowiak13-Jul-16 5:55 
AnswerRe: System.AccessViolationException When Calling Dll Function Again Pin
Luc Pattyn13-Jul-16 8:33
sitebuilderLuc Pattyn13-Jul-16 8:33 
GeneralRe: System.AccessViolationException When Calling Dll Function Again Pin
Bernhard Hiller14-Jul-16 3:59
Bernhard Hiller14-Jul-16 3:59 
AnswerRe: System.AccessViolationException When Calling Dll Function Again Pin
Slacker00713-Jul-16 8:35
professionalSlacker00713-Jul-16 8:35 
AnswerRe: System.AccessViolationException When Calling Dll Function Again Pin
Bernhard Hiller13-Jul-16 21:42
Bernhard Hiller13-Jul-16 21:42 
AnswerRe: [SOLVED] System.AccessViolationException When Calling Dll Function Again Pin
Member 132605384-Nov-19 16:38
Member 132605384-Nov-19 16:38 
GeneralRe: [SOLVED] System.AccessViolationException When Calling Dll Function Again Pin
Django_Untaken11-Nov-19 20:49
Django_Untaken11-Nov-19 20:49 
AnswerRe: [SOLVED] System.AccessViolationException When Calling Dll Function Again Pin
Member 162142615-Apr-20 0:28
Member 162142615-Apr-20 0:28 
Questionthe action cannot be completed because the file is open in w3wp.exe Pin
Rocky Nandu12-Jul-16 21:05
Rocky Nandu12-Jul-16 21:05 
AnswerRe: the action cannot be completed because the file is open in w3wp.exe Pin
OriginalGriff12-Jul-16 21:30
mveOriginalGriff12-Jul-16 21:30 
AnswerRe: the action cannot be completed because the file is open in w3wp.exe Pin
Pete O'Hanlon12-Jul-16 22:49
mvePete O'Hanlon12-Jul-16 22:49 
AnswerRe: the action cannot be completed because the file is open in w3wp.exe Pin
F-ES Sitecore12-Jul-16 23:40
professionalF-ES Sitecore12-Jul-16 23:40 
GeneralRe: the action cannot be completed because the file is open in w3wp.exe Pin
Rocky Nandu29-Jul-16 1:48
Rocky Nandu29-Jul-16 1:48 
QuestionHow To Wire Up This Event Pin
Kevin Marois12-Jul-16 14:42
professionalKevin Marois12-Jul-16 14:42 
AnswerRe: How To Wire Up This Event Pin
Super Lloyd12-Jul-16 16:43
Super Lloyd12-Jul-16 16:43 
GeneralRe: How To Wire Up This Event Pin
Kevin Marois13-Jul-16 6:14
professionalKevin Marois13-Jul-16 6:14 
GeneralRe: How To Wire Up This Event Pin
Super Lloyd13-Jul-16 7:07
Super Lloyd13-Jul-16 7:07 
GeneralRe: How To Wire Up This Event Pin
Kevin Marois13-Jul-16 7:10
professionalKevin Marois13-Jul-16 7:10 
Ok, so I modified your approach just a bit:
public abstract class BaseViewModel
{
    //  Property to specify the View's type. Needs to be set in each VM subclass.
    public ViewTypes ViewType { get; protected set; }

    // CTOR
    public BaseViewModel()
    {
        ViewType = ViewTypes.None;
        AppCore.DataReceived += AppCore_DataReceived;
    }

    // Listens for Data Received.
    public void AppCore_DataReceived(object sender, DataReceivedArgs args)
    {
        // If the ViewModel matches the data model's type...
        if (CanHandleDataReceived(args))
        {
            // Call DataReceived in the subclass
            DataReceived(args);
        }
    }

    // Determines if the subclass can handle the datas received event
    protected virtual bool CanHandleDataReceived(DataReceivedArgs args) 
    {
        return ViewType == args.ViewType; 
    }

    // Subclass method for receiving the data
    protected abstract void DataReceived(DataReceivedArgs args);
}

The subclasses now only need to set the ViewType property. Then this code checks for the type and if it matches, calls the abstract DataReceived.

What do ya think?
If it's not broken, fix it until it is

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.