如何将List<ShoppingItem>中的内容绑定到DataGridView1中

问题描述

//实体类ShoppingItempublicclassShoppingItem{privateBooksbooks;publicBooksBooks{get{returnbooks;}set{books=value;}}privateintquantity;//数量publicintQuantity{get{returnquantity;}set{quantity=value;}}//两参构造函数,用于添加新书publicShoppingItem(){}publicShoppingItem(Booksbooks,intquantity){this.books=books;this.quantity=quantity;}}//业务逻辑层List<ShoppingItem>相当于一个购物车的列表。publicclassShoppingManager{privateList<ShoppingItem>shoppingItems=newList<ShoppingItem>();publicList<ShoppingItem>ShoppingItems{get{returnshoppingItems;}set{shoppingItems=value;}}#region点击商品购买后的发生事件publicvoidAddItem(intbookid){if(shoppingItems==null){this.shoppingItems=newList<ShoppingItem>();}//分为购物车当前是否存在该商品boolhadBuy=false;foreach(ShoppingItemiteminthis.shoppingItems){if(item.Books.Id==bookid){hadBuy=true;item.Quantity+=1;//购物车中该商品的数量增加1break;}}if(!hadBuy)//如果购物车中没有该商品,进行添加新商品到购物车中{Booksbooks=newBookService().GetBookById(bookid);this.shoppingItems.Add(newShoppingItem(books,1));}}}//数据操作层publicclassBookService{publicBooksGetBookById(intbookid){SqlHelpersh=newSqlHelper();Booksbooks=newBooks();stringsql="select*fromBookswhereid="+bookid;SqlDataReadersdr=sh.GetDataReader(sql);while(sdr.Read()){books.Id=Convert.ToInt32(sdr[0].ToString());//编号books.Title=sdr[1].ToString();//标题books.Author=sdr[2].ToString();//作者books.Publisherid=Convert.ToInt32(sdr[3].ToString());//出版社IDbooks.Publishdate=Convert.ToDateTime(sdr[4].ToString());//出版时间books.Isbn=sdr[5].ToString();//书号books.Unitprice=Convert.ToDouble(sdr[6].ToString());//单价books.Contentdescription=sdr[7].ToString();//内容描述books.Toc=sdr[8].ToString();//目录books.Categoryid=Convert.ToInt32(sdr[9].ToString());//类别books.Clicks=Convert.ToInt32(sdr[10].ToString());//点击次数}returnbooks;}}//实体类BookspublicclassBooks{privateintid;publicintId{get{returnid;}set{id=value;}}privatestringtitle;publicstringTitle{get{returntitle;}set{title=value;}}privatestringauthor;publicstringAuthor{get{returnauthor;}set{author=value;}}privateintpublisherid;publicintPublisherid{get{returnpublisherid;}set{publisherid=value;}}privateDateTimepublishdate;publicDateTimePublishdate{get{returnpublishdate;}set{publishdate=value;}}privatestringisbn;publicstringIsbn{get{returnisbn;}set{isbn=value;}}privatedoubleunitprice;publicdoubleUnitprice{get{returnunitprice;}set{unitprice=value;}}privatestringcontentdescription;publicstringContentdescription{get{returncontentdescription;}set{contentdescription=value;}}privatestringtoc;publicstringToc{get{returntoc;}set{toc=value;}}privateintcategoryid;publicintCategoryid{get{returncategoryid;}set{categoryid=value;}}privateintclicks;publicintClicks{get{returnclicks;}set{clicks=value;}}}

解决方案

解决方案二:
这是我某个页面设置一个按钮和DatagridViewprotectedvoidButton1_Click(objectsender,EventArgse){ShoppingManagersm=newShoppingManager();sm.AddItem(4939);List<ShoppingItem>list=newList<ShoppingItem>();list=sm.ShoppingItems;gdvShopping.DataSource=list;gdvShopping.DataBind();}
解决方案三:
前台设置gdvShopping.AutoGenerateColumns=ture;后台:gdvShopping.DataSource=list;gdvShopping.DataBind();
解决方案四:
#2这个都是设置好的,我这边显示出来是这样,商品名我是绑定好了的,就是不能显示出值
解决方案五:
商品名对应哪个字段,没看到ShoppingItem中有商品名

时间: 2024-11-05 18:44:21

如何将List&amp;lt;ShoppingItem&amp;gt;中的内容绑定到DataGridView1中的相关文章

Swift语法快速索引

在WWDC的演示中就可以看出来Swift这个更接近于脚本的语言可以用更少的代码量完成和OC同样的功能.但是对于像我一样在战争中学习战争的同学们来说,天天抱着笨Swift Programming Language Reference之类的大部头看不实际.毕竟还是要养家糊口的.而且,那么1000+页内容讲的东西不是什么都要全部在平时工作中用到的.咱们就把平时用到的全部都放在一起,忘记了立马翻开看看,不知不觉的就学会了之后变成习惯.这样多省事. 变量 1 // Variable 2 var int_v

《Servlet和JSP学习指南》一2.4 HttpSession对象

2.4 HttpSession对象 在所有的Session追踪技术中,HttpSession对象是最强大的,也是功能最多的.用户可以没有或者有一个HttpSession,并且只能访问他/她自己的HttpSession. HttpSession是当一个用户第一次访问某个网站时自动创建的.通过在HttpServlet-Request中调用getSession方法,可以获取用户的HttpSession.getSession有两个重载方法: 无参的getSession方法返回当前的HttpSession

《Servlet、JSP和Spring MVC初学指南》——2.4 HttpSession对象

2.4 HttpSession对象 在所有的会话跟踪技术中,HttpSession 对象是最强大和最通用的.一个用户可以有且最多有一个HttpSession,并且不会被其他用户访问到. HttpSession对象在用户第一次访问网站的时候自动被创建,你可以通过调用HttpServletRequest的getSession方法获取该对象.getSession有两个重载方法: HttpSession getSession() HttpSession getSession(boolean create

解决win7系统无法将网页添加到收藏夹的方法

  许多用户在访问网站时,如果看到自己感兴趣的网页内容或网站,通常我们都会通过Ctrl+D添加到收藏夹中,但近期有部分win7系统用户,在浏览器下添加网页收藏时,却发现无法将网页添加到收藏夹,对于这一问题我们如何解决呢?下面看小编为大家提供的详细解决方法吧! 原因分析: 很多时候网址不能收藏都是由于收藏夹目录指向错误引起的,我们可以到注册表里将其修复. 操作方法: 1.在开始菜单中点击"运行",然后输入"regedit"并且回车; 2.打开注册表编辑器,依次展开[H

“无法创建网站,未指定的错误”错误的解决方法

在Win7系统中使用IE浏览器时,通常情况下都会将自己喜欢的网页添加到收藏夹,也是便后继快捷打开使用.然而在用户打开网页,点击"添加到收藏夹"按钮时,系统却突然弹出了一个"无法创建网站,未指定的错误"的提示窗口.这种状况是由于转移了收藏夹位置,收藏夹对新的文件夹没有完全控制的权限,从而导致添加网址失败的问题,出现收藏夹项目无法查看和刷新的情况,怎么办呢?小编以雨林木风win7旗舰版64位系统为例给大家分享IE无法添加网址到收藏夹简单的解决方案,具体如下: 1.在Wi

win7系统IE浏览器收藏夹无法收藏网页怎么办

    win7系统IE浏览器收藏夹无法收藏网页怎么办 具体步骤如下: 1.按下"Win+R"组合键打开运行,输入"regedit"点击确定打开注册表编辑器; 2.在注册表左侧展开:HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer/UserShell Folders ; 3.在右双击打开"Favorites",将其数值数据修改为"%USERPROFI

如何解决win7旗舰版系统下IE收藏夹无法展开的问题

近期朋友在电脑的操作过程中遇到这样一个问题,计算机中的收藏夹突然无法正常展开了,遇到这样的问题令人十分的懊恼.经过多番的研究及测试之后,总算找到了解决计算机中收藏夹无法展开问题的方法.下面就一起来分享看看如何解决win7旗舰版系统计算机中收藏夹无法展开问题吧! 操作方法: 1.使用快捷键win键+r键打开运行窗口,在运行窗口中输入"regedit"回车确认,打开注册表编辑器. 打开注册表编辑器 2.在打开的注册表编辑器中,依次展开到HKEY_CLASSES_ROOTlnkfile. 展

win7电脑IE浏览器无法添加网址怎么办?

  收藏夹功能,可以说是现在每个浏览器都具备的,毕竟,我们有经常打开某些网站的习惯,例如喜欢购物的朋友,对于网上经常有活动,经常会打折的网站就特别的钟爱,当然,我们也会将这些网站收集起来,存放到自己的收藏夹中,而喜欢游戏的朋友则会收藏众多的游戏网页,这些都是咱们日常电脑操作中比较常用到的功能.不过今天,小编在论坛中看到有一位朋友提问了,说是ghost win7中IE浏览器的收藏功能无法使用了,无法添加网址到收藏夹,这个问题要如何来解决呢? 1.首先,咱们同时按下win+r打开电脑的运行窗口,然后

电脑中通过修改注册表解决网页无法添加到收藏夹的方法

  电脑中通过修改注册表解决网页无法添加到收藏夹的方法.最近有不少用户反映在电脑中出现了无法添加网页到收藏夹的问题,尝试了各种方法都无法解决这个问题.对此,在接下来的内容中,小编为大家提供了一种通过修改注册表解决网页无法添加到收藏夹的方法,大家可以参考一下. 1.按Win+R打开运行,输入regedit并按回车键; 2.在注册表编辑器依次展开HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer/UserShell