PDA

View Full Version : دسترسی به عناصر داخل گریدویو



setareh2013
سه شنبه 23 اسفند 1390, 23:51 عصر
با سلام
من یه کنترل هایپر لینک داخل گریدویو از طریق edit template قرارداده ام . میشه بگین چه طور میتونم از طریق کد نویسی به این هایپرلینک دسترسی پیدا کنم چون برنامه اونو نمی شناسه .
با تشکر

omid6630
سه شنبه 23 اسفند 1390, 23:56 عصر
به نام خدا وسلام .

باید به هایپر لینکت - CommandArgument و CommandName بدی - بعد توی رویداد های گرید ویو باید ازش استفاده کنی . به این صورت .

CommandArgument='<%# Eval("Ma_ID") %>' CommandName="delet-maddahi"

توی گرید هم اینطوری بهش دسترسی داری .

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "delet-maddahi")
{
int IDdelMaddahi = Convert.ToInt32(e.CommandArgument);
string delgrid = "delete from Maddahi where Ma_ID=@Ma_ID";
SqlCommand cmd = new SqlCommand(delgrid, cnn);
cmd.Parameters.AddWithValue("@Ma_ID", IDdelMaddahi);
cnn.Open();
cmd.ExecuteNonQuery();
cnn.Close();
BindMaddahiGrid();
}

if (e.CommandName == "update-maddahi")
{
int IDupMaddahi = Convert.ToInt32(e.CommandArgument);

SqlConnection cnn = new SqlConnection(SqlHelper2.strConnectionString);
string selectforedit = "select Ma_Program,Ma_Date,Ma_Place,Ma_Section,Ma_Name,Ma_ File from Maddahi where Ma_ID=@Ma_ID";
SqlCommand cmd = new SqlCommand(selectforedit, cnn);
cmd.Parameters.AddWithValue("@Ma_ID", IDupMaddahi);
cnn.Open();
SqlDataReader sdr = cmd.ExecuteReader();
sdr.Read();

txtMddProgram.Text = sdr["Ma_Program"].ToString();
txtMddDate.Text = sdr["Ma_Date"].ToString();
txtMddPlace.Text = sdr["Ma_Place"].ToString();
txtMddSection.Text = sdr["Ma_Section"].ToString();
txtMddName.Text = sdr["Ma_Name"].ToString();
//txtDownload.Text = sdr["Download"].ToString();

sdr.Close();
cnn.Close();

ViewState["IDrenameMaddahi"] = IDupMaddahi;
BindMaddahiGrid();
}