2009-03-13 5 views
1

J'ai créé une application WinForms avec un contrôle personnalisé richtextbox.Appel de mon propre code d'événement et code d'événement personnalisé dans C#

Je me réfère à un contrôle Windows (un fichier dll) dans mon projet. Dans mon programme pour la zone richtext, j'ai écrit des fonctionnalités à l'intérieur de son événement textchanged.

Je souhaite effectuer un travail supplémentaire uniquement après le déclenchement de l'événement textchanged ou d'une autre manière une fois le texte ajouté à la zone de texte. Quelque chose comme je veux appeler une fonction foo() dans le text_changedevent. Il appelle uniquement foo et ne parvient pas à traiter l'événement textchanged sous-jacent.

De toute façon en C# je peux d'abord traiter l'événement textchanged interne, puis regarder dans mon événement text changed?

penser le scénario que j'ai écrit le code pour mytextbox_textchanged

private void txt_code_TextChanged(object sender, EventArgs e) 
    { 
     //some code which will always be called whenever textchanged event occurs. 
    } 

Maintenant, je hériteront de cette commande dans mon projet myapp1 dire. Ici, j'ai une étiquette où je veux afficher le nombre de lignes contenues dans ma zone de texte. Donc, j'écrirais

private void my_inherited_txt_code_TextChanged(object sender, EventArgs e) 
    { 
     //code to update the label with my_inherited_txt_code.lines.length 
    } 

donc mon problème a été, je voulais d'abord l'événement txt_code_TextChanged à appeler et faire le code écrit à l'intérieur my_inherited_txt_code_TextChanged. Qui a été résolu en écrivant

private void my_inherited_txt_code_TextChanged(object sender, EventArgs e) 
    { 
     base.OnTextChanged(e); 
     MessageBox.Show("foo"); 
    } 
+0

pourrait vous envoyer un code pour démontrer le problème? – Matt

Répondre

1

Voulez-vous dire:

protected override void OnTextChanged(EventArgs e) 
{ 
    base.OnTextChanged(e); 
    // your code here... 
} 
+0

merci. c'était ce que je cherchais! –

0

Je ne vois pas pourquoi vous ne devriez pas pouvoir appeler une méthode de l'événement text_changed? Avez-vous des erreurs ou que se passe-t-il exactement?

Questions connexes