WikiElectronique

Wiki sur l'électronique et l'informatique

Outils pour utilisateurs

Outils du site


memo_des_indispensables

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
memo_des_indispensables [2015/04/17 23:12] – [OpenFileDialog] 82.228.9.53memo_des_indispensables [2017/12/06 16:13] (Version actuelle) – modification externe 127.0.0.1
Ligne 18: Ligne 18:
    
 ==== Lecture d'un fichier texte ==== ==== Lecture d'un fichier texte ====
-<code csharp |OpenFileDialog +<code csharp |OpenFileDialog> 
-                System.IO.StreamReader file = new System.IO.StreamReader(textBoxIdModele.Text); +System.IO.StreamReader file = new System.IO.StreamReader(textBoxIdModele.Text); 
-                string Text = file.ReadToEnd(); +string Text = file.ReadToEnd(); 
-                file.Close();+file.Close();
 </code> </code>
 ==== Lecture d'un fichier texte ligne par ligne ==== ==== Lecture d'un fichier texte ligne par ligne ====
Ligne 38: Ligne 38:
 ==== Ecriture d'un fichier texte ==== ==== Ecriture d'un fichier texte ====
  
-<code csharp |OpenFileDialog>+<code csharp |WriteAllText>
 System.IO.File.WriteAllText(@"C:\Users\Public\TestFolder\WriteText.txt", text); System.IO.File.WriteAllText(@"C:\Users\Public\TestFolder\WriteText.txt", text);
 </code>  </code> 
 +
 +==== Selectionner un répertoire ====
 +<code csharp |FolderBrowserDialog>
 +string Path;
 +
 +FolderBrowserDialog folderBrowserDialog = new FolderBrowserDialog();
 +folderBrowserDialog.RootFolder = Environment.SpecialFolder.DesktopDirectory;
 +if (folderBrowserDialog.ShowDialog() == DialogResult.OK)
 +{
 +    Path = folderBrowserDialog.SelectedPath;
 +}
 +</code> 
 +
 +===== Événements =====
 +Vous avez un objet qui doit vous renvoyer une information. Exemple un client doit se connecter à un serveur et vous souhaitez recupérer l'information qu'il s'est connecté.
 +Voici un petit exemple.
 +
 +La premiere chose à faire est dans la classe de votre objet de créer le ou les évenements.
 +Cette événement renverra un argument herité de EventArgs. Il est possible de passer n'importe quelle variable que l'on souhaite
 +
 +<code csharp |Exemple d'evenement Classe Client>
 +    class Client
 +    {
 +        public event EventHandler<ConnectedEventArgs> ClientConneted;
 +
 +        protected virtual void OnClientConnected(ConnectedEventArgs e)
 +        {
 +            if (ClientConneted != null) ClientConneted(this, e);
 +        }
 +
 +        public Client()
 +        {
 +        }
 +
 +        public void Connect()
 +        {
 +            //Procédure de connexion ....
 +            // Si connecté :
 +
 +            //Déclenchement de l'évenement
 +            OnClientConnected(new ConnectedEventArgs("Connexion OK !",14));
 +        }
 +    }
 +
 +    //Classe de l'argument de l'evement
 +    public class ConnectedEventArgs : EventArgs
 +    {
 +        internal string m_msg;   //Un parametre quelconque passé
 +        internal int m_val;
 +
 +        public ConnectedEventArgs(string msg, int val)
 +        {
 +            m_msg = msg;
 +            m_val = val;
 +        }
 +    }
 +</code>
 +
 +Une fois que vous avez créé votre événement dans votre objet, il faut que votre application s'abonne à cette événement :
 +
 + <code csharp |Exemple d'evenement Abonnement et déclenchement>
 +    class Client
 +    {
 +        Client clt = new Client();
 +
 +        public Form1()
 +        {
 +            InitializeComponent();
 +
 +            //Abonnement à l'évenement
 +            clt.ClientConneted += new EventHandler<ConnectedEventArgs>(clt_ClientConneted);
 +            //Lancement de la précudure de connexion qui déclenchera l'évenement
 +            clt.Connect();
 +        }
 +
 +        /// <summary>
 +        /// Methode qui sera executé au déclenchement de l'évenement
 +        /// </summary>
 +        /// <param name="sender"></param>
 +        /// <param name="e"></param>
 +        private void clt_ClientConneted(object sender, ConnectedEventArgs e)
 +        {
 +            MessageBox.Show("Client connecté, argument: " + e.m_msg + " val: " + e.m_val); 
 +        }
 +    }
 +</code>
memo_des_indispensables.1429305126.txt.gz · Dernière modification : 2017/12/06 16:11 (modification externe)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki