Solved

charp variable

Posted on 2009-05-18
1
233 Views
Last Modified: 2012-05-07
private void listBox1_DragOver(object sender, DragEventArgs e)
        {
            if (e.Data.GetDataPresent(DataFormats.FileDrop))
            {
                e.Effect = DragDropEffects.Copy;
            }
            else
            {
                e.Effect = DragDropEffects.None;
            }
        }



why we no need to declare  Type of  e.Effect      such as object e.Effect    or int  e.Effect

I am very new for csharp
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
 
using System.Data.SqlClient;
 
namespace CDLib
{
    public partial class CDEntry : Form
    {
        public CDEntry()
        {
            InitializeComponent();
        }
 
        private void label3_Click(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            this.Close();
 
        }
 
        private void listBox1_DragOver(object sender, DragEventArgs e)
        {
            if (e.Data.GetDataPresent(DataFormats.FileDrop))
            {
                e.Effect = DragDropEffects.Copy;
            }
            else
            {
                e.Effect = DragDropEffects.None;
            }
        }
 
        private void listBox1_DragDrop(object sender, DragEventArgs e)
        {
            if (e.Data.GetDataPresent(DataFormats.FileDrop))
            {
                // Reads the Drop files int to a string array;
                string[] filePaths =
                    (string[])(e.Data.GetData(DataFormats.FileDrop));
 
                // Iteraction 
                foreach (string filename in filePaths)
                {
                    string keyword = Path.GetFileNameWithoutExtension(filename);
                    this.AddKeyWord(keyword);
                }
            }
 
        }
 
        int AddKeyWord(string keyword)
        {
            string lowercaseKeyword = keyword.ToLower();
 
            int idx = KeyWordList.Items.IndexOf(lowercaseKeyword);
            if (idx == -1)
            {
                KeyWordList.Items.Add(lowercaseKeyword);
 
            }
 
            return idx;
        }
 
        private void SaveButton_Click(object sender, EventArgs e)
        {
            // Validate Form fields
 
            if (tbCdName.Text.Length < 5)
            {
                MessageBox.Show("Please enter a valid CD Name (min. 5 Characters)");
                return;
 
            }
 
            if (KeyWordList.Items.Count < 1)
            {
                MessageBox.Show("Please add Key Words to the keyword List");
                return;
            }
 
            try
            {
                this.Opacity = 40.0;
                this.Enabled = false;
                this.Cursor = Cursors.WaitCursor;
 
                if (SaveData())
                {
                    MessageBox.Show("CD Entry saved succesfully!");
                    this.Close();
                }
            }
            finally
            {
                this.Opacity = 100.0;
                this.Enabled = true;
                this.Cursor = Cursors.Default;
            }
 
          
        }
 
 
        
        /// <summary>
        /// Store the CD Entry to the Database
        /// </summary>
        /// <returns></returns>
        bool SaveData()
        {
            bool result = false;
 
            int cdLibraryID = 0;
 
            //TODO: Use a transaction in this scope
            // Create a connection 
            using (SqlConnection conn = new SqlConnection(CDLib.Program.Connstring))
            {
                // Create SqlCommand. We use a T-SQL Store Procedure
                // to insert the Data in to the CdLibrary table
                using (SqlCommand cmd = new SqlCommand("insert_CdLibrary", conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
 
                    cmd.Parameters.AddWithValue("@CdName", tbCdName.Text);
                    cmd.Parameters.AddWithValue("@CdDescription", tbCdDescription.Text);
                    cmd.Parameters.AddWithValue("@Location", tbCdLocation.Text);
                    cmd.Parameters.AddWithValue("@CdType", "");
 
 
                    try
                    {
                        conn.Open();
                        cdLibraryID = Convert.ToInt32(cmd.ExecuteScalar());
                    }
                    catch (Exception ex)
                    {
                        conn.Close();
                        MessageBox.Show(ex.Message);
                        return false;
                    }
                    
                }
                // Create SqlCommand. We use a T-SQL Store Procedure
                // to insert the Data in to the CdLibrary_keyword table
                using (SqlCommand cmd = new SqlCommand("insert_cdkeywords", conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
 
                    cmd.Parameters.AddWithValue("@EntryCDID", cdLibraryID);
                    cmd.Parameters.AddWithValue("@KeyWordIDList", GetKeyWordList());
 
 
 
                    try
                    {
                        cmd.ExecuteScalar();
                    }
                    catch (Exception ex)
                    {
                        conn.Close();
                        MessageBox.Show(ex.Message);
                        return false;
                    }
 
 
                    result = true;
                }
            }
 
 
            return result;
        }
 
        private string GetKeyWordList()
        {
            string result = string.Empty;
 
            for (int i = 0; i < KeyWordList.Items.Count - 1; i++ )
            {
                result += KeyWordList.Items[i].ToString() + ';';
            }
 
            return result;
            
        }
 
        private void CancelButton_Click(object sender, EventArgs e)
        {
            this.Close();
        }
 
        private void AddKeyWordButton_Click(object sender, EventArgs e)
        {
 
            if(tbKeyWord.Text.Length < 5)
            {
                MessageBox.Show("Please enter a valid KeyWord (min. 5 Characters)");
                return;
 
            }
 
            if (AddKeyWord(tbKeyWord.Text) != -1)
            {
                MessageBox.Show(string.Format("Keyword :{0} allready exists! Please try again.", tbKeyWord.Text));
                return;
            }
 
        }
 
        private void KeyWordList_SelectedIndexChanged(object sender, EventArgs e)
        {
            int idx = KeyWordList.SelectedIndex;
            if (idx != -1)
            {
                tbKeyWord.Text = KeyWordList.Items[idx].ToString();
            }
        }
 
       
 
        private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
        {
            if (KeyWordList.SelectedIndex == -1)
                e.Cancel = true;
 
        }
 
        private void deleteToolStripMenuItem_Click(object sender, EventArgs e)
        {
             int idx = KeyWordList.SelectedIndex;
 
             if (idx != -1)
             {
                 DialogResult result =
                     MessageBox.Show("Are you sure you want to delete this item?", "", 
                     MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                 if(result == DialogResult.Yes)
                     KeyWordList.Items.RemoveAt(idx);
 
             }
        }
 
       
    }
}

Open in new window

0
Comment
Question by:teera
1 Comment
 
LVL 10

Accepted Solution

by:
oxyoo earned 500 total points
ID: 24418714
Hi
The variable "e" is already declared as an DragEventArgs in the method as a parameter (DragEventArgs e) this means that you can use the variable e anywhere inside the listBox1_DragDrop method.
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article introduced a TextBox that supports transparent background.   Introduction TextBox is the most widely used control component in GUI design. Most GUI controls do not support transparent background and more or less do not have the…
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question