Declare a DateTime object at the beginning of Bind() method:
DateTime choosenDate = DateTime.Minvalue;
after
selectedDATE = selectedDATE.Substring(0, selectedDATE.Length - 1);
you state:
DateTime.TryParse(selectedDate, out choosenDate);
If the TryParse succeedded choosenDate has now a different date than 1 january 1
so:
if (!choosenDate.Equals(DateTime.MinValue)
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@param", SqlDbType.DateTime).Value = choosenDate;
conn.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds= new DataSet();
da.Fill(ds);
GRIDVIEW.DataSource = ds.Tables[0];
GRIDVIEW.DataBind();
}
see Also:
https://msdn.microsoft.com/en-us/library/ch92fbc1(v=vs.110).aspx[
^]