PDA

View Full Version : در مورد چک باکس درگرید ویو



korosh00
جمعه 04 بهمن 1392, 00:32 صبح
سلام
من قبلا یک لینک باتن می گذاشتم در گرید ویو به این طریق

<ItemTemplate>
<asp:LinkButton ID="lkDelte" runat="server"
OnClientClick="return confirm('Are you sure you want to delete?')"
CommandName="remove"
CommandArgument='<%# Eval("idagahi") %>'><img src="imgg/delete.png" alt="Delete"
border="0" /></asp:LinkButton>

</ItemTemplate>


توی کدهای سی شارپ هم


public void RemovePic(int newsId)
{
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;User ID=admin;Data Source=|DataDirectory|\\site.mdb");
string query = "select aks from agahi where idagahi=@idagahi";
OleDbCommand cmd = new OleDbCommand(query, con);
cmd.Parameters.AddWithValue("@idagahi", newsId);
con.Open();
string fileName = cmd.ExecuteScalar().ToString();
con.Close();

File.Delete(Server.MapPath(fileName));

}




protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "remove")
{
int newsId = Convert.ToInt32(e.CommandArgument);
RemovePic(newsId);
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;User ID=admin;Data Source=|DataDirectory|\\site.mdb");
string query = "delete from agahi where idagahi=@idagahi";
OleDbCommand cmd = new OleDbCommand(query, con);
cmd.Parameters.AddWithValue("@idagahi", newsId);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
();
}




به این طریق می توانستم هم رکورد را پاک کنم و هم فایل عکس را از پوشه

حالا آمدم از چک باکس استفاده کردم بجای لینک باتن .
چطوری کاری بکنم هم رکورد پاک بشه و هم عکس از پوشه .
البته نمونه پاک کردن رکورد را دارم که هر رکوردی که چک باکسش تیک بخوره حذف بشه چجوری آرگومان بدم که فایل هم پاک بشه .
ممنون

fakhravari
جمعه 04 بهمن 1392, 01:27 صبح
خب کد بالا مگه همین کارا رو نمیکنه!

korosh00
جمعه 04 بهمن 1392, 11:47 صبح
من بجای لینک باتن الان چک باکس گذاشتم که طرف روی هر رکورد که تو گرید ویو چک باکس داره تیک زد اون رکورد پاک شه حالا طرف 10 تا رکورد را هم انتخاب کرد با کلیک روی حذف پاک شه . وقتی چک باکس گذاشتم اون کدها و غیره را چجوری باید تغییر بدم .



protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "remove")
{
int newsId = Convert.ToInt32(e.CommandArgument);
RemovePic(newsId);
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; User ID=admin;Data Source=|DataDirectory|\\site.mdb");
string query = "delete from agahi where idagahi=@idagahi";
OleDbCommand cmd = new OleDbCommand(query, con);
cmd.Parameters.AddWithValue("@idagahi", newsId);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
();
}



الان این زمانی که لینک باتن می گذارم کار میکنه و میره عکس را از پوشه کار میکنه هر موقع روی لینک کلیک بشه .
حالا که چک باکس گذاشتم چکار کنم ؟