نمایش نتایج 1 تا 5 از 5

نام تاپیک: ویرایش رکورد انتخابی در دیتاگریدویو

  1. #1
    کاربر دائمی
    تاریخ عضویت
    آذر 1388
    محل زندگی
    پاریس کوچولو
    سن
    35
    پست
    120

    ویرایش رکورد انتخابی در دیتاگریدویو

    با سلام خدمت همه اساتید
    من یه برنامه با visual studio 2008نوشتم که می یاد نام کتاب و نام ناشر و سال چاپ رو میگیره و توی کتابخونه درج می کنه

    نمایش همه کتاب ها در پایین فرم بر عهده دیتا گرید ویو هست
    توی دیتا گرید ویو دوتا دکمه گذاشتم.یکی حذف و یکی ویرایش

    دکمه حذف رو خودم برنامه نویسی کردم ولی دکمه ویرایش رو نتونستم.هر چی به ذهنم میومد غلط بود
    می خوام هر وقت کاربر روی دکمه ویرایش کلیک کرد نام کتاب و نام ناشر و سال نشر مربوط به اون رکورد رو توی تکس های مربرطه (تکس مربوط به نام کتاب و نام ناشر وسال نشر) قرار بده.سپس اونو ویرایش کنم و دوباره درج کنم
    حالا از اساتید هر کی می تونه ممنون میشم کمکم کنه

    این برنامه رو با برنامه نویسی سه لایه انجام دادم
    یک کلاس به نام book داره
    یک کلاس به نام data access layer داره
    عکس مربوط به فرم رو attach میکنم





    Class book
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    namespace book1
    {
    class book
    {
    public string booknameclass;
    public string nashernameclass;
    public string yearclass;
    DataAccessLayer dal = new DataAccessLayer();
    public DataTable show_all_book()
    {
    DataTable dt = new DataTable();
    string strsql = "select * from tbl_book";
    dal.connect();
    dt=dal.select(strsql);
    return dt;
    dal.disconnect();
    }
    public void add_book()
    {
    string strsql = "insert into tbl_book(namebook,namenasher,yearbook)values(N'{0} ',N'{1}',N'{2}')";
    strsql=string.Format(strsql,this.booknameclass,this.nashernameclass,this.yearclass);
    dal.connect();
    dal.docommand(strsql);
    dal.disconnect();
    }
    public DataTable searchbyname(string sql)
    {
    DataTable dt = new DataTable();
    string strsql = "select * from tbl_book where namebook like N'%{0}%'";
    strsql = string.Format(strsql,sql);
    dal.connect();
    dt=dal.select(strsql);
    dal.disconnect();
    return dt;
    }
    public DataTable searchbynasher(string sql)
    {
    DataTable dt = new DataTable();
    string strsql = "select * from tbl_book where namenasher like N'%{0}%'";
    strsql = string.Format(strsql, sql);
    dal.connect();
    dt = dal.select(strsql);
    dal.disconnect();
    return dt;
    }
    public DataTable searchbyyear(string sql)
    {
    DataTable dt = new DataTable();
    string strsql = "select * from tbl_book where yearbook like N'%{0}%'";
    strsql = string.Format(strsql, sql);
    dal.connect();
    dt = dal.select(strsql);
    dal.disconnect();
    return dt;
    }
    public DataTable deletebyidshow(int result)
    {
    string strsql = "delete from tbl_book where id={0}";
    strsql = string.Format(strsql,result);
    string strsql1 = "select * from tbl_book";
    DataTable dt = new DataTable();
    dal.connect();
    dal.docommand(strsql);
    dt =dal.select(strsql1);
    dal.disconnect();
    return dt;
    }
    }
    }










    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data;
    using System.Data.SqlClient;
    using System.Data.Sql;
    namespace book1
    {
    class DataAccessLayer
    {
    public SqlConnection con;
    public SqlCommand cmd;
    public SqlDataAdapter da;
    public DataAccessLayer()
    {
    con=new SqlConnection();
    cmd=new SqlCommand();
    da=new SqlDataAdapter();
    cmd.Connection = con;
    da.SelectCommand = cmd;
    }
    public void connect()
    {
    con.ConnectionString=@"Data Source=.\SQLEXPRESS;AttachDbFilename=|datadirector y|\db_book1.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
    con.Open();
    }
    public void disconnect()
    {
    con.Close();
    }
    public void docommand(string sql)
    {
    cmd.CommandText=sql;
    cmd.ExecuteNonQuery();
    }
    public DataTable select(string sql)
    {
    DataTable dt= new DataTable();
    cmd.CommandText = sql;
    da.Fill(dt);
    return(dt);
    }
    public int scalercommand(string sql)
    {
    cmd.CommandText=sql;
    int a=(int)cmd.ExecuteScalar();
    return a;
    }
    //internal void select()
    //{
    // throw new NotImplementedException();
    // }
    internal void docommand()
    {
    throw new NotImplementedException();
    }
    }
    }










    کد های توی فرم
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Data.SqlClient;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    namespace book1
    {
    public partial class Form1 : Form
    {
    public int result;
    DataAccessLayer dal = new DataAccessLayer();
    public Form1()
    {
    InitializeComponent();
    }
    private void Form1_Load(object sender, EventArgs e)
    {
    book b1 = new book();
    dataGridView1.DataSource = b1.show_all_book();
    }
    private void btn_insert_Click(object sender, EventArgs e)
    {
    book b2 = new book();
    b2.booknameclass = txt_namebook.Text;
    b2.nashernameclass = txt_nasher.Text;
    b2.yearclass = txt_year.Text;
    b2.add_book();
    MessageBox.Show("اطلاعات با موفقت در ج شد");
    txt_year.Clear();
    txt_nasher.Clear();
    txt_namebook.Clear();
    dataGridView1.DataSource = b2.show_all_book();
    }
    private void search_namebook_TextChanged(object sender, EventArgs e)
    {
    book b3=new book();
    dataGridView1.DataSource = b3.searchbyname(txt_search_namebook.Text);
    }
    private void txt_search_nasher_TextChanged(object sender, EventArgs e)
    {
    book b4 = new book();
    dataGridView1.DataSource = b4.searchbynasher(txt_search_nasher.Text);
    }
    private void txt_search_year_TextChanged(object sender, EventArgs e)
    {
    book b5 = new book();
    dataGridView1.DataSource = b5.searchbyyear(txt_search_year.Text);
    }
    private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
    {
    if (dataGridView1.CurrentCell.Value.ToString().Trim() == "حذف")
    {
    book b6 = new book();
    DialogResult dr;
    dr = MessageBox.Show("آیا از حذف رکورد مورد نظر مطمئن هستید؟", "حذف", MessageBoxButtons.YesNo);
    if (dr == DialogResult.Yes)
    {
    int result=(int)dataGridView1.CurrentRow.Cells["id"].Value;
    dataGridView1.DataSource = b6.deletebyidshow(result);
    }
    }



    عکس های ضمیمه عکس های ضمیمه

  2. #2
    کاربر دائمی
    تاریخ عضویت
    آذر 1388
    محل زندگی
    پاریس کوچولو
    سن
    35
    پست
    120

    نقل قول: ویرایش رکورد انتخابی در دیتاگریدویو

    -------------
    فایل های ضمیمه فایل های ضمیمه

  3. #3
    کاربر دائمی آواتار R_khaleghi
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    شیراز
    پست
    185

    نقل قول: ویرایش رکورد انتخابی در دیتاگریدویو

    نقل قول نوشته شده توسط ahmadkavand مشاهده تاپیک
    -------------

    سلام.
    این که کاری نداره هر textbox رو جدا جدا bind کن به تک تک فیلدهای datagrid.
    بعد میتونی از دستور آپدیت sql استفاده کنی و ویرایش کنی.

  4. #4
    کاربر دائمی
    تاریخ عضویت
    آذر 1388
    محل زندگی
    پاریس کوچولو
    سن
    35
    پست
    120

    نقل قول: ویرایش رکورد انتخابی در دیتاگریدویو

    میشه دوستان یه کم بیشتر توضیح بدن
    آخه توی سی شارپ مبتدی ام فعلا

  5. #5
    کاربر دائمی آواتار R_khaleghi
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    شیراز
    پست
    185

    نقل قول: ویرایش رکورد انتخابی در دیتاگریدویو

    نقل قول نوشته شده توسط ahmadkavand مشاهده تاپیک
    میشه دوستان یه کم بیشتر توضیح بدن
    آخه توی سی شارپ مبتدی ام فعلا
    شما باید این کار رو انجام بدین:
    این واسه اینه که bind کنی اطلاعاتت رو داخل textboxها:

     if (Datagrid.SelectedRows.Count == 0)
    {
    Msg.Show(".اطلاعاتی در جدول ثبت نشده است", "خطا", MsgIcon.Error, MsgButton.Ok);

    }
    else
    {
    txt_Book_Name.Text = Datagrid.CurrentRow.Cells["Book_Name"].Value.ToString();
    txt_Nasher.Text = Datagrid.CurrentRow.Cells["nasher"].Value.ToString();
    sale_nashr.Text = Datagrid.CurrentRow.Cells["sale_nashr"].Value.ToString();
    }


    واسه ویرایشش هم باید این کار رو انجام بدی:

    Str_Update="Update ،Tb_Book Set Book_Name= ' " + txt_Book_Name.Text +" ',nasher= ' " + nasher.text +" ', sale_nashr= ' " + sale_nashr.text + " ' ";
    cmd.Connection = con;
    cmd.CommandText = Str_Update;
    cmd.ExecuteNonQuery();
    ds.Clear();
    da.SelectCommand.CommandText = "Select * From Tb_Book";
    da.Fill(ds, "Tb_Book");
    Datagrid.DataSource = ds;
    Datagrid.DataMember = "Tb_Book";

تاپیک های مشابه

  1. نمایش و ویرایش رکورد ها mysql با استفاده از php
    نوشته شده توسط yazdan در بخش PHP
    پاسخ: 2
    آخرین پست: یک شنبه 05 آبان 1392, 17:41 عصر
  2. پاسخ: 5
    آخرین پست: چهارشنبه 30 خرداد 1386, 15:49 عصر
  3. خواهش می کنم برای ثبت و ویرایش رکورد کمکم کنید
    نوشته شده توسط afaghmoh در بخش ASP.NET Web Forms
    پاسخ: 11
    آخرین پست: سه شنبه 24 آبان 1384, 08:55 صبح
  4. پیغام خطا هنگام ویرایش رکورد- فوری!!
    نوشته شده توسط payam59 در بخش Access
    پاسخ: 3
    آخرین پست: یک شنبه 25 بهمن 1383, 13:10 عصر
  5. نام فیلد در dbgrid قبل از ویرایش رکورد
    نوشته شده توسط در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 1
    آخرین پست: شنبه 28 تیر 1382, 12:14 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •