please don't expect me to be able to give you information how to implement such a thing properly.
The answer:
I would try the following:
You have a page with a help button on it. If you click you create EventArgs containing the name of the page (nameof could be nice to use here to enable refactoring of strings).
Now you load the stuff which can be seen in your screenshots in the following way:
LoadHelp(EventArgs args);
In LoadHelp you create the buttons (visually).
Then you either load the default help page by say LoadDefaultPage();
or you call LoadPage(EventArgs args) with the args from above.
LoadPage now evaluates the args by the string you set within the onclick event in a way like:
// Notice that nameof could be again a good choice.
// Alternatively you could provide a static class
// or something containing constants like
// public static const string Login = "Login";
switch(args.PageName)
{
case("Login"):
// stuff
break;
case("Registrar"):
// stuff
break;
// more cases
default:
LoadDefaultPage();
break;
}
Now you don't have to "click" your buttons anymore but can process the event to a separate logic which handles not only your help-page buttons but the page buttons with the help button, too!
I hope this is understandable. Sorry, my english is not that good so I (maybe?) have to build strange sentences.
Again:
I never did this and I can't provide a "tutorial". I can notice though that your design looks smelly in case of maintainability and bug-awarness because of the chaining responsibility. In that special case it MAY work without problems but if you ever choose to redesign you could run into issues (IMHO)!
Maybe the other guys in this group can provide a much more solid solution for you.
In doubt consider asking your question again on stackoverflow.com.
Please format the code you posted, by wrapping it in triple backticks. -> `
To be honest, it is confusing for me to comprehend this. I'll have to do a trial setup to try to understand how it all works. I understand a slight bit but I will try. Thanks
Обсуждают сегодня