Hello,
I just created a docker in visual studio.
I have attached something with Page.Properties that displays in docker.
but how can i refresh docker when user change page in coreldraw.
I have find document.pagechange or pageactivate event but don't know how to use.
please guide me.
I'm impressed... A lot of useful things for somebody not so skilled in C# like me. I am trying a way which looked easier to me. I'm trying to avoid lambda expressions and in this way unsubscribing should work. At least this is what I hope and test. I saved your generic class in a safe place and if what I am trying doesn't work I definitely will use it . Thank you again!
My thought looked to work...
Eliminating lambda expressions all event handlers were not anonymous any more and they could be found and events unsubscribed. Here's the code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
public partial class DockerUI : UserControl { private corel.Application corelApp; public DockerUI(corel.Application app) { this.corelApp = app; InitializeComponent(); foreach (corel.Document doc in this.corelApp.Documents) { RegistryPageEvent(doc); } this.corelApp.DocumentOpen += RegistryPageEventOpen; this.corelApp.DocumentNew += RegistryPageEventNew; this.Unloaded += app_DockerUnloaded; } void RegistryPageEventOpen(corel.Document doc, string FileName) { doc.PageActivate += app_PageActivated; } void RegistryPageEventNew(corel.Document doc, bool fT,string t, bool inclG) { doc.PageActivate += app_PageActivated; } //pageActivated event... void app_PageActivated(corel.Page pag) { MessageBox.Show(pag.Name, "Docker_Event"); } void RegistryPageEvent(corel.Document doc) { doc.PageActivate += app_PageActivated; } void UnRegistryPageEvent(corel.Document doc) { doc.PageActivate -= app_PageActivated; } void app_DockerUnloaded(object sender, RoutedEventArgs e) { corelApp.DocumentOpen -= RegistryPageEventOpen; corelApp.DocumentNew -= RegistryPageEventNew; foreach (corel.Document doc in this.corelApp.Documents) { UnRegistryPageEvent(doc); } MessageBox.Show("Terminated..."); } private void btHello_Click(object sender, RoutedEventArgs e) { MessageBox.Show("Hello from my docker!", "Greetings..."); } }
Finally I succeed to use hilite.me...
Thanks for that, too!