Bouton enregistrer

Résolu
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009
- 26 mai 2007 à 08:47
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
- 28 mai 2007 à 14:13
bonjour à tous,

comment enregistrer un fichier en c# en cliquant sur un bouton enregistrer?

comment imprimer un fichier en c# en cliquant sur un bouton imprimer?

merci

18 réponses

MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
28 mai 2007 à 14:13
Regarde le lien que je t'ai donné dans ma toute premiere réponse. Ya tout ce qu'il te faut (PrintDialog... tu peux aussi regarder ce que la MSDN t'en dit).

Mx
MVP C# 
2
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
28 mai 2007 à 09:39
using(SaveFileDialog sfd = new SaveFileDialog())
{
   if(sfd.ShowDialog() == DialogResult.OK)
   {
      // Sauvegarde de ton fichier.
      // Tu peux récuperer le nom entré par l'utilisateur avec sfd.FileName
   }
}

Mx
MVP C# 
1
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
28 mai 2007 à 13:55
http://msdn2.microsoft.com/en-us/library/system.drawing.brushes.aspx



On y lit : "Namespace : System.Drawing"

Tu as ajouté le using qui va bien en haut de ta page ?

Mx
MVP C# 
1
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 08:57
bonjour
merci à votre réponse mais s'il vous plait est ce que vous pouvez me dire comment je peux utiliser (SaveFileDialog).
merci pour tous
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 09:48
rebonjour

merci 1000 fois maintenant on va essayer ce code et si il y a un probléme je veux te répondre.

svp j'ai un petit question est ce que vous avez une connaissance de connection à la base(sqlserver2005)?

merci une autre fois?
0
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 09:55
bonjour
j'essaye avec ce code mais aprés l'enregistrement de mon fichier je ne le trouve pas dans l'emplacement que j'ai choisi.
c'est quoi la probléme ?
 merci beaucoup.
0
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
28 mai 2007 à 09:57
le problèeme se trouve dans mon premier message

"Ensuite pour reellement effectuer la sauvegarde ca depend de ton type de fichier (texte, image, ...). Avec un peu de précision on pourra te donner la solution exacte"

Le SaveFileDialog permetà l'utilisateur d'indiquer où il souhaite sauvegarder le fichier, mais n'effectue pas la sauvegarde.

Mx
MVP C# 
0
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 10:05
je veux enregistrer le contenu d'un panel sous le type .txt.
merci
0
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
28 mai 2007 à 10:07
Comment veux-tu enregistrer un panel en format txt ?
Tu as quoi dans ce panel ?

Mx
MVP C# 
0
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 10:15
je suis entains de dévélopper un logiciel (inventaire automatique d'un parc informatique) qui permet d'inventer une machine et afficher ces informations systéme dans un panel.alos je veux enregistrer ces informations.
merci
0
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
28 mai 2007 à 10:26
Ok

Donc a priori tu sais comment récuperer chaque information que tu affiche dans ton panel.
Tu vas pouvoir procéder ainsi, en remplacant chaque info par ce que toi tu récupères

<hr />
using (
SaveFileDialog sfd =
new
SaveFileDialog())
{

   if(sfd.ShowDialog() ==
DialogResult.OK)
   {

      using (
StreamWriter sw =
new
StreamWriter(sfd.FileName))
      {
         sw.WriteLine(
"info1");
         sw.WriteLine(
"info2");

        //..    
      }
   }

}
<hr />
Je te laisse gérer les erreurs qui peuvent survenir (manque de droits en ecriture, ...)

Mx
MVP C# 
0
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 11:19
merci 1000 fois de ton aide c'est bien pssé l'enregistrement.
merci une autre fois.
0
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 12:02
c'est bien passé avec le bouton enregistre mais avec le bouton imprimer on 'a pas compris comment on fait? avez vous un autre exemple plus simple?
merci
0
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
28 mai 2007 à 12:25
Tu as tout ce qu'il te faut dans la documentation MSDN

Mx
MVP C# 
0
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 12:40
merci bien je vais lire cette documentation.
et essayer de comprendre.
merci pour tous
0
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 13:51
on a essayé avec ce code mais un erreure qui fournit


l' erreur lors de l'execution:

"The name 'Brushes' does not exist in the current context

C:\Documents and Settings\admin\Mes documents\Visual Studio 2005\Projects\parc\parc\Form2.cs"
c'est la solution?
System.IO.StreamReader fileToPrint;

        System.Drawing.Font printFont;
        private void button2_Click(object sender, EventArgs e)
        {
            string printPath = System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
            fileToPrint = new System.IO.StreamReader(printPath + @"\myFile.txt");
            printFont = new System.Drawing.Font("Arial", 10);
            printDocument1.Print();
            fileToPrint.Close();

        }

        private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
        {
            float yPos = 0f;
            int count = 0;
            float leftMargin = e.MarginBounds.Left;
            float topMargin = e.MarginBounds.Top;
            string line = null;
            float linesPerPage = e.MarginBounds.Height / printFont.GetHeight(e.Graphics);
            while (count < linesPerPage)
            {
                line = fileToPrint.ReadLine();
                if (line == null)
                {
                    break;
                }
                yPos = topMargin + count * printFont.GetHeight(e.Graphics);
                e.Graphics.DrawString(line, printFont, Brushes.Black, leftMargin, yPos, new System.Drawing.StringFormat());
                count++;
            }
            if (line != null)
            {
                e.HasMorePages = true;
            }
        }
merci
0
ahlemlo
Messages postés
225
Date d'inscription
samedi 7 avril 2007
Statut
Membre
Dernière intervention
21 mai 2009

28 mai 2007 à 14:07
on résolut le probléme de l'érreure mais juste je veux qu'il m'affiche avant l'imprission la page de paramétre de l'imprimante (nobre de page,de copie....)
merci trés bien
0
MorpionMx
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
56
26 mai 2007 à 09:28
Salut,

Pour sauver un fichier, tu peux te servir du SaveFileDialog pour demander à l'utilisateur l'emplacement vers lequel sauvegarder (si necessaire). Ensuite pour reellement effectuer la sauvegarde ca depend de ton type de fichier (texte, image, ...). Avec un peu de précision on pourra te donner la solution exacte.

Pour l'impression, je te conseille d'aller lire la petite source interactive de Bidou qui se trouve ici
Mx
MVP C# 
-2