For now I execute a search in database and display the result with
string keyWord = textBoxSearch.Text.ToString();
using (SqlConnection con = new SqlConnection(conString))
{
    try
    {
        con.Open();
        if (con.State == ConnectionState.Open)
        {
            using (SqlCommand cmd = new SqlCommand("SELECT articleCode, articleName FROM Article WHERE articleName LIKE '" + keyWord + "%'", con))
            {
                // Put search result in dataGrid
            }
        }
    }
}
Now following SqlCommand.Parameters example I should do something like 
string cmdQuery = "SELECT articleCode, articleName from Article WHERE articleName LIKE @articleName'";
using (SqlConnection con = new SqlConnection(conString))
{
    using (SqlCommand cmd = new SqlCommand(cmdQuery, con))
    {
        cmd.Parameters.Add("@articleName", SqlDbType.NVarChar);
        cmd.Parameters["@articleName"].Value = textBoxSearch.Text;
        try
        {
            // Put search result in dataGrid
        }
    }
}
But I don't really see how different this is because I still have to use the raw textBoxSearch.Text value. Am I doing this right ?
 
    