首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

winform修改listview数据有关问题

2013-12-19 
winform修改listview数据问题//修改窗体//修改窗体加载时,同时加载修改的数据private void FrmUpdateBook_

winform修改listview数据问题
//修改窗体

//修改窗体加载时,同时加载修改的数据
        private void FrmUpdateBook_Load(object sender, EventArgs e)
        {
            FrmMain fm = new FrmMain();
            BindTypeAndPub();
            txtUpIsbn.Text = _upbookisbn;
            txtUpBookName.Text = _upbookname;
            txtUpAuthor.Text = _upauthor;
            txtUpBookClick.Text = _upbookclicks.ToString();
            txtUpBookCount.Text = _upbookcount.ToString();
            txtUpBookIntro.Text = _upbookintru;
            txtUpBookPrice.Text = _upbookprice.ToString();
            txtUpBookTOC.Text = _upbooktoc;
            txtUpWordCount.Text = _upbookwordcount.ToString();
            cmbUpPub.Text= _uppublisher;
            cmbUpType.Text = _upbooktype;
            dtpUp.Value =Convert.ToDateTime( _uppubdate);
        }

        //修改图书的方法
        public void UpdateBookShow()
        {
            BookInfo book = new BookInfo();
            book.ISBN = this.txtUpIsbn.Text;
            book.BookName = this.txtUpBookName.Text;
            book.Author = this.txtUpAuthor.Text;
            book.BookClicks = Convert.ToInt32(this.txtUpBookClick.Text);
            book.BookCount = Convert.ToInt32(this.txtUpBookCount.Text);
            book.BookIntru = this.txtUpBookIntro.Text;
            book.BookPrice = Convert.ToDouble(this.txtUpBookPrice.Text);
            book.BookStatus = BookStatus.Normal;
            book.WordCount = Convert.ToInt32(this.txtUpWordCount.Text);
            book.PubDate = this.dtpUp.Value;
            book.TOC = this.txtUpBookTOC.Text;
            book.PubId = Convert.ToInt32(this.cmbUpPub.SelectedValue);
            book.TypeId = Convert.ToInt32(this.cmbUpType.SelectedValue);

            bim.UpdateBook(book);
        }


//主窗体
 //弹出修改窗体的方法
        public void BindUpdateBook()
        {
            FrmUpdateBook fu = new FrmUpdateBook();
            string isbn = lsvBook.SelectedItems[0].Text;
            BookInfoManager bookinfomanager = new BookInfoManager();
            BookTypeManager booktypemanager = new BookTypeManager();
            PublisherManager pub = new PublisherManager();
            Publisher publisher = new Publisher();
            BookType booktype = new BookType();
            BookInfo book = bookinfomanager.GetBookByISBN(isbn);
            fu._upbookisbn = lsvBook.SelectedItems[0].Text;
            fu._upbookname = lsvBook.SelectedItems[0].SubItems[1].Text;
            fu._upauthor = lsvBook.SelectedItems[0].SubItems[2].Text;


            fu._upbooktype = lsvBook.SelectedItems[0].SubItems[3].Text;
            fu._upbookprice = Convert.ToDouble(lsvBook.SelectedItems[0].SubItems[4].Text);
            fu._uppublisher = lsvBook.SelectedItems[0].SubItems[5].Text;
            fu._uppubdate = lsvBook.SelectedItems[0].SubItems[6].Text;
            fu._upbookclicks = book.BookClicks;
            fu._upbookcount = book.BookCount;
            fu._upbookintru = book.BookIntru;
            fu._upbooktoc = book.TOC;
            fu._upbookwordcount = book.WordCount;
            fu.Show();
            

        }




可以实现修改,但是选中一条修改后,数据库的所有数据都被修改成相同的数据

求解决办法

winform修改listview数据有关问题
winform修改listview数据有关问题


同时求修改后,主窗体的listview进行刷新的方法
[解决办法]

"update BookInfo set BookName='" + book.BookName + "',Author='" + book.Author + "',PubDate='" + book.PubDate + "',WordCount='" + book.WordCount + "',BookIntru='" + book.BookIntru + "',BookPrice='" + book.BookPrice + "',TypeId='" + book.TypeId + "',PubId='" + book.PubId + "',TOC='" + book.TOC + "',BookStatus='" + (int)book.BookStatus + "',BookCount='" + book.BookCount + "',BookClicks='" + book.BookClicks + "' where ISBN='" + book.ISBN + "'"

热点排行