I am using a query to find keywords in a particular field, when i put the @parameter and then addparameter with value it does not work, however when i input the value direct
You're currently putting your parameter within quotes, which means it's no longer being used as a parameter. I suspect you want:
string cmdText = "SELECT * FROM tblshareknowledge where title LIKE @myTitle";
cmd = new MySqlCommand(cmdText, con);
cmd.Parameters.AddWithValue("@myTitle", "%" + title + "%");