您的位置:首页 > 运维架构

DataGrid基础,添加DropDownList,改变单击行的颜色,隐藏显示列

2010-08-17 22:54 453 查看
一:基本

<asp:TemplateColumn HeaderText="标题" SortExpression="对应字段名">
<ItemTemplate>
//平常状态时套用的的模板
<asp:Label runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"对应字段名")%>'/>
</ItemTemplate>

<EditItemTemplate>
//编辑模式下套用的模板
<asp:TextBox runat="server" id="" Text='<%# DataBinder.Eval(Container.DataItem,"对应字段名")%>'/>
<asp:RequiredFieldValidator id="" runat="server"/>
//可添加大量你喜欢的控件
</EditItemTemplate>
</asp:TemplateColumn>

<%%> 服务器代码标识符 # 数据绑定的符号
DataGrid的中的一行称为一个DataGridItem,每个DataGridItem包含一个隐藏的GridItemIndex属性,记录DataGridItem的索引值,从0开始;另外每个DataGridItem还包含一个隐藏的DataItem属性,其中包含一个参考指向数据源中对应的一条数据
在<asp:BoundColumn HeaderText="" DataField="" ReadOnly=true></asp:BoundColumn> 设为ReadOnly在编加模式下可以只读显示
二:在DataGrid中添加DropDownList //其中ds为绑定到DataGrid中的数据源DataSet,GetSelectIndex()为取得index的方法,在页面中如下声明

三:单击改变当前行颜色

<asp:TemplateColumn>
<ItemTemplate>
<asp:Label runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"对应字段名")%>'/>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList runat="server" DataSource='<%# ds.Tables[""].DefaultView%>' DataTextField="" DataValueField="" SelectIndex='<GetSelectIndex((string)DataBinder.Eval(Container.DataItem,"根据这个字段名获取DropDownList的index属性"))%>'/>
</EditItemTemplate>

public int GetSelectIndex(string str)

<asp:TemplateColumn>
<ItemTemplate>
<asp:Label runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"对应字段名")%>'/>
</ItemTemplate>

<EditItemTemplate>
<asp:DropDownList runat="server" DataSource='<%# ds.Tables[""].DefaultView%>' SelectIndex='<GetSelectIndex2((string)DataBinder.Eval(Container.DataItem,"根据这个字段名获取DropDownList的index属性"))%>'>
<asp:ListItem value="aaaa">aaaa</asp:ListItem>
<asp:ListItem value="bbbb">bbbb</asp:ListItem>
<asp:ListItem value="cccc">cccc</asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateColumn>

在Item_Create中添加代码:

客户端代码:(javascript):

<script language=javascript>
function CG(obj)
</script>

四:隐藏显示列

四:动态添加列,删除列

BoundColumn col = new BoundColumn();
col.HeaderText="标题";
col.DataField="绑定数据列";
DataGrid1.Columns.Add(col);

DataGrid1.Columns.Remove(col);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐