If you are using store procedure like you mention in your question...
create procedure proapmc3
as
select * from apmc2
And it will not taking any parameter to return data, so why are you sending parameter to your bindgrid method?
and as per your code, you are using BEL class object to define your property and you are just creating object of it and pass it in your displygird method without initializing any property values like ID, Name or Date_In etc.
Please remove all parameter binding in your DLL method and also remove parameter of BLE from your BLL method too. And try to debug all this methods.
Like this...
SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=master;Integrated Security=True");
con.Open();
SqlCommand cmd = new SqlCommand("proapmc3", con);
cmd.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
also please take care your your open connection object and please properly open/close your sql server connection