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

关于GridView分页、显示、以及编辑的有关问题

2012-01-23 
关于GridView分页、显示、以及编辑的问题我载入的一个表有多个字段,但是我只想显示其中几个字段~用SQL语句写

关于GridView分页、显示、以及编辑的问题
我载入的一个表有多个字段,但是我只想显示其中几个字段~
用SQL语句写入后
string   ISql   =   "select   idd,dishno   as   菜品编号,dishname   as   菜品名   from   T_Dish ";
然后我再在GridView1的RowEditing事件中写入:
GridView1.EditIndex   =   e.NewEditIndex;
GridView1.DataBind();
然后前台代码里加入如下:
<Columns>      
<asp:BoundField   DataField= "idd "   HeaderText= "ID "   ReadOnly= "True "   />    
<asp:BoundField   DataField= "dishno "   HeaderText= "菜品编号 "     />      
<asp:BoundField   DataField= "dishname "   HeaderText= "菜品名 "   />                  
<asp:CommandField   HeaderText= "编辑 "   ShowEditButton= "True "   />
</Columns>
这时候弹出的结果页面是:
_________________________________________________________
ID     |   菜品编号   |     菜品名   |   编辑   |   idd   |   Dishno   |DishName|
---------------------

如果我去掉:
<asp:BoundField   DataField= "idd "   HeaderText= "ID "   ReadOnly= "True "   />    
<asp:BoundField   DataField= "dishno "   HeaderText= "菜品编号 "     />      
<asp:BoundField   DataField= "dishname "   HeaderText= "菜品名 "   />        
这几句的话,产生的结果如下:
________________________________
编辑   |   ID   |     菜品编号   |   菜品名   |
--------------------------------

如果我把SQL语句改成如下:

ISql   =   "select   idd,dishno,dishname   from   T_Dish ";
前台代码如下:

<Columns>      
<asp:BoundField   DataField= "idd "   HeaderText= "ID "   ReadOnly= "True "   />    
<asp:BoundField   DataField= "dishno "   HeaderText= "菜品编号 "     />      
<asp:BoundField   DataField= "dishname "   HeaderText= "菜品名 "   />                  
<asp:CommandField   HeaderText= "编辑 "   ShowEditButton= "True "   />
</Columns>

产生的结果如下:
____________________________________________________
编辑     |   ID   |     菜品编号   |   菜品名   |   其他字段…………   |
----------------------------------------------------

而我想获得的结果是:
________________________________
  ID   |     菜品编号   |   菜品名   |编辑   |
--------------------------------

请问我该怎么操作?

用代码如何能控制列宽??
我控制列宽的代码:
  GridView1.Columns[0].ItemStyle.Width   =   10;
提示是:索引超出范围。必须为非负值并小于集合大小。
参数名:   index

请问这个怎么解决。。。

谢谢了,请各位达达赐教了


[解决办法]
AutoGenerateEditButton= "false "
[解决办法]
protected void GridView1_RowCreated( object sender, GridViewRowEventArgs e )
{
if (e.Row.RowType == DataControlRowType.Header)
{
//第一列
e.Row.Cells[0].Width = Unit.Parse( "340 ");


//第二列
e.Row.Cells[1].Width = Unit.Parse( "300 ");
.....
}

}

热点排行