Boite de dialogue rechercher

[Résolu]
Signaler
Messages postés
86
Date d'inscription
jeudi 8 juillet 2004
Statut
Membre
Dernière intervention
27 juin 2007
-
Messages postés
86
Date d'inscription
jeudi 8 juillet 2004
Statut
Membre
Dernière intervention
27 juin 2007
-
Bonjour,

Je suis en train de réaliser un éditeur type bloc note et actuellement, en train d'implémenter la fonction rechercher/remplacer.

Avec un ShowDialog, j'y parvient sans difficultés, mais il bloque l'accés à la form mère en prenant le focus.
Il faut donc que j'utilise un Show, tout en maintenant la fenêtre au premier plan (always on top). Le problème est que je n'arrive pas à envoyer des paramètres dans ma fenetre mère (mot clé, remplacé par, options de recherche...)

Merci d'avance de votre aide
@++ Tahiti_bob

4 réponses

Messages postés
86
Date d'inscription
jeudi 8 juillet 2004
Statut
Membre
Dernière intervention
27 juin 2007
1
C'est bon, j'ai trouvé une méthode qui permet d'effectuer ce que je veux :

- Dans la form mère, ce code permet d'afficher le dialog et de monter un paramètre (ici, l'onglet séléectionné) avec "find_replace" le nom de la form, "onglets", le nom du tabcontrol. "tab_remplacer" désigne l'onglet sélectionné.
Attention, les onglets doivent être déclarés en "public" et non en "private"
find_replace find_replace2 =
new
find_replace(
this);
find_replace2.onglets.SelectedTab = find_replace2.tab_remplacer;
find_replace2.Show();

- Dans la form fille ("find_replace"), ce code permet d'activer une fonction se trouvant dans la form mère, pouvant passer eventuellement des paramètres.
Ici, "Form1" désigne le nom de la form mère, "remplacer_suivant" le nom de la fonction à appeler :
public find_replace(
Form1 pad)
{
formPad = pad;
InitializeComponent();
}

.......
Form1 f1 = (
Form1)(formPad);
f1.remplacer_suivant(remplacer_mot.Text, remplacer_par.Text);


Pour finir, on récupère le tout avec cette fonction dans "Form1" :
public
void remplacer_suivant(
string motcle,
string remplace)
{
.....
}

L'avantage de cette méthode est qu'elle n'utilise pas ShowDialog, donc, n'empêche pas l'accés à la form mère en lui prenant son focus.
Voila
@++ Tahiti_bob
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
58
Salut,
C'est toujours le même système, faut passer tes paramètres d'une form à une autre.
Je crois d'ailleurs (si mes souvenirs sont bons) que c'est toi qui avait poster un commentaire sur ma source que j'avais faite à ce sujet (passage de paramètres).
Cette solution te convient pas ?

[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever
Messages postés
86
Date d'inscription
jeudi 8 juillet 2004
Statut
Membre
Dernière intervention
27 juin 2007
1
Salut Bidou

Effectivement, c'était moi qui avait posé dans le forum une question concernant les dialogs. Tu avais déposé par la suite une source sur ce sujet.
En fait, mon problème est que je n'arrive pas a passer des paramètres avec une form affichée avec la fonction Show(); et non ShowDialog();

MErci
Messages postés
86
Date d'inscription
jeudi 8 juillet 2004
Statut
Membre
Dernière intervention
27 juin 2007
1
J'ai posté une source sur cette méthode à l'adresse suivante :
http://www.csharpfr.com/code.aspx?ID=31864

@++ Tahiti_bob