GridView的一个入门问题求解答

百变猪娃娃 2014-12-09 05:35:45
protected void Grid_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow) //数据行
{

DataRowView info = e.Row.DataItem as DataRowView;



通过调试得知 e.Row.DataItem 有数据,为何转换为 DataRowView后,info 为null呢?不明白,求解答。
...全文
123 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaozai_1965067409 2014-12-10
  • 打赏
  • 举报
回复
GridView绑定数据显示商品详细信息 //GridView设置显示数据功能 <asp:GridView ID="gvGoodsInfo" runat="server" CellPadding="4" ForeColor="#333333" GridLines="None" Font-Size="9pt" AutoGenerateColumns="False" AllowPaging="True" PageSize="8" OnPageIndexChanging="gvGoodsInfo_PageIndexChanging" Width="450px"> <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" /> <RowStyle BackColor="#F7F6F3" ForeColor="#333333" /> <EditRowStyle BackColor="#999999" /> <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" /> <PagerStyle BackColor="#CBCF7A" ForeColor="Black" HorizontalAlign="Right" /> <HeaderStyle BackColor="#CBCF7A" Font-Bold="True" ForeColor="White" /> <AlternatingRowStyle BackColor="White" ForeColor="#284775" /> <Columns> <asp:BoundField DataField="PicId" HeaderText="商品ID" /> <asp:BoundField DataField="PicType" HeaderText="所属类别" /> <asp:BoundField DataField="GoodsStock" HeaderText="库存量" /> <asp:BoundField DataField="PicName" HeaderText="商品名称" /> <asp:HyperLinkField HeaderText="详细信息" Text="详细信息" DataNavigateUrlFields="PicId" DataNavigateUrlFormatString="EditGInfo.aspx?GoodsID={0}" Target="mainframe" NavigateUrl="~/MemberManage/EditGInfo.aspx" > <ControlStyle Font-Underline="False" ForeColor="Black" /> <ItemStyle Font-Underline="False" ForeColor="Black" /> <HeaderStyle Font-Underline="False" ForeColor="Black" /> </asp:HyperLinkField> </Columns> </asp:GridView>//codego.net/tags/11/1/ //cs页面绑定GridView控件加载数据 SqlConnection sqlcon = new SqlConnection(ConfigurationManager.AppSettings["ConnectionString"]); protected void Page_Load(object sender, EventArgs e) { string sqlstr = "select * from tbPicture"; //创建执行查询操作的SQL语句 sqlcon.Open();//打开数据库连接 SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);//创建数据阅读器 DataSet myds = new DataSet(); //创建数据集 myda.Fill(myds); //填充数据集 gvGoodsInfo.DataSource = myds; //设定数据源 gvGoodsInfo.DataBind(); //绑定数据 sqlcon.Close(); //关闭数据库连接 }
moonwrite 2014-12-10
  • 打赏
  • 举报
回复
DataItem as DataRowView 如果DataRowView不是DataItem 的子类 是不可以转的 我现在很少用控件了,都mvc了 你可以搜索一下GridView 72般绝技
sciinfojs123 2014-12-09
  • 打赏
  • 举报
回复
在RowDataBound事件中.. if (e.Row.RowType == DataControlRowType.DataRow) //判断是否数据行; {   DataRowView drv = (DataRowView)e.Row.DataItem;   string haveimg = drv["Hd_HaveImage"].ToString();   string uid = drv["Hd_Id"].ToString(); } 可以直接读取数据库中未绑定到列的字段. 或者可以用 if (e.Row.RowType == DataControlRowType.DataRow) //判断是否数据行; {   string haveimg = DataBinder.Eval(e.Row.DataItem , "Hd_HaveImage").ToString(); }

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧