查看DataList控件中数据的详细信息
来源:互联网 发布:李笑来骗局 知乎 编辑:程序博客网 时间:2024/05/15 14:27
显示被选择记录的详细信息可以通过SelectItemTemplate模板来完成,使用该模板来显示信息时,需要一个控件激发DataList控件的ItemCommand事件
【步骤1】新建一个网站,默认主页为Default.aspx。在default.aspx页中添加一个DataList控件。打开DataList控件的项模板编辑模式,在ItemTemplate模板中添加一个LinkButton控件,用于显示用户选择的数据项;在SelectItemTplate模板中添加一个Linkbutton控件和4个Label控件,分别用于取消对该数据项的选择和该数据项详细信息的显示,设计图如下:
【步骤2】
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Bind();//数据绑定
}
}
【步骤3】//进行数据绑定的方法
public void Bind()
{
//实例化SqlConnection对象
SqlConnection sqlCon = new SqlConnection();
//实例化SqlConnection对象连接数据库的字符串
sqlCon.ConnectionString = "server=你的服务器r;uid=sa;pwd=;database=db_Student";
//定义SQL语句
string SqlStr = "select * from tb_StuInfo";
//实例化SqlDataAdapter对象
SqlDataAdapter da = new SqlDataAdapter(SqlStr, sqlCon);
//实例化数据集DataSet
DataSet ds = new DataSet();
da.Fill(ds, "tb_StuInfo");
this.DataList1.DataSource = ds;
this.DataList1.DataKeyField = "stuID";
this.DataList1.DataBind();
}
【步骤4】用户单击模板中的按钮时,会引发DataList控件中的ItemCommand事件,在该事件的程序代码中根据不同按钮的CommandName属性设置DataList控件的SelectIndex属性的值,决定显示详细信息或者取消显示,最后重新绑定到数据源中。
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
if (e.CommandName == "select")
{
//设置选中行的索引为当前选择行的索引
DataList1.SelectedIndex = e.Item.ItemIndex;
//数据绑定
Bind();
}
if (e.CommandName == "back")
{
//设置选中行的索引为-1,取消该数据项的选择
DataList1.SelectedIndex = -1;
//数据绑定
Bind();
}
}
【步骤5】调试结果如下
点击名字显示详细信息前
点击名字显示详细信息后
【补充Default.aspx代码】
<body>
<form id="form1" runat="server">
<div>
<table style="width: 255px; height: 198px">
<tr>
<td>
<asp:DataList ID="DataList1" runat="server" OnItemCommand="DataList1_ItemCommand">
<SelectedItemStyle BackColor="Teal" ForeColor="White" />
<ItemTemplate>
<table>
<tr>
<td style="width: 100px; height: 21px">
学生姓名:</td>
<td style="width: 100px; height: 21px">
<asp:LinkButton ID="lnkbtnName" runat="server" CommandName="select" Text='<%# DataBinder.Eval(Container.DataItem,"stuName") %>'></asp:LinkButton></td>
</tr>
</table>
</ItemTemplate>
<SelectedItemTemplate>
<table>
<tr>
<td style="width: 77px">
编号:</td>
<td style="width: 100px">
<asp:Label ID="lblID" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"stuID") %>'></asp:Label>
<asp:LinkButton ID="lnkbtnBack" runat="server" CommandName="back">返回</asp:LinkButton></td>
</tr>
<tr>
<td style="width: 77px">
姓名:</td>
<td style="width: 100px">
<asp:Label ID="lblName" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"stuName") %>'></asp:Label></td>
</tr>
<tr>
<td style="width: 77px">
性别:</td>
<td style="width: 100px">
<asp:Label ID="lblSex" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"stuSex") %>'></asp:Label></td>
</tr>
<tr>
<td style="width: 77px">
爱好:</td>
<td style="width: 100px">
<asp:Label ID="lblHobby" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"stuHobby") %>'></asp:Label></td>
</tr>
</table>
</SelectedItemTemplate>
</asp:DataList></td>
</tr>
</table>
</div>
</form>
</body>
【步骤1】新建一个网站,默认主页为Default.aspx。在default.aspx页中添加一个DataList控件。打开DataList控件的项模板编辑模式,在ItemTemplate模板中添加一个LinkButton控件,用于显示用户选择的数据项;在SelectItemTplate模板中添加一个Linkbutton控件和4个Label控件,分别用于取消对该数据项的选择和该数据项详细信息的显示,设计图如下:
【步骤2】
{
if (!IsPostBack)
{
Bind();//数据绑定
}
}
【步骤3】//进行数据绑定的方法
public void Bind()
{
//实例化SqlConnection对象
SqlConnection sqlCon = new SqlConnection();
//实例化SqlConnection对象连接数据库的字符串
sqlCon.ConnectionString = "server=你的服务器r;uid=sa;pwd=;database=db_Student";
//定义SQL语句
string SqlStr = "select * from tb_StuInfo";
//实例化SqlDataAdapter对象
SqlDataAdapter da = new SqlDataAdapter(SqlStr, sqlCon);
//实例化数据集DataSet
DataSet ds = new DataSet();
da.Fill(ds, "tb_StuInfo");
this.DataList1.DataSource = ds;
this.DataList1.DataKeyField = "stuID";
this.DataList1.DataBind();
}
【步骤4】用户单击模板中的按钮时,会引发DataList控件中的ItemCommand事件,在该事件的程序代码中根据不同按钮的CommandName属性设置DataList控件的SelectIndex属性的值,决定显示详细信息或者取消显示,最后重新绑定到数据源中。
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
if (e.CommandName == "select")
{
//设置选中行的索引为当前选择行的索引
DataList1.SelectedIndex = e.Item.ItemIndex;
//数据绑定
Bind();
}
if (e.CommandName == "back")
{
//设置选中行的索引为-1,取消该数据项的选择
DataList1.SelectedIndex = -1;
//数据绑定
Bind();
}
}
【步骤5】调试结果如下
点击名字显示详细信息前
【补充Default.aspx代码】
<body>
<form id="form1" runat="server">
<div>
<table style="width: 255px; height: 198px">
<tr>
<td>
<asp:DataList ID="DataList1" runat="server" OnItemCommand="DataList1_ItemCommand">
<SelectedItemStyle BackColor="Teal" ForeColor="White" />
<ItemTemplate>
<table>
<tr>
<td style="width: 100px; height: 21px">
学生姓名:</td>
<td style="width: 100px; height: 21px">
<asp:LinkButton ID="lnkbtnName" runat="server" CommandName="select" Text='<%# DataBinder.Eval(Container.DataItem,"stuName") %>'></asp:LinkButton></td>
</tr>
</table>
</ItemTemplate>
<SelectedItemTemplate>
<table>
<tr>
<td style="width: 77px">
编号:</td>
<td style="width: 100px">
<asp:Label ID="lblID" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"stuID") %>'></asp:Label>
<asp:LinkButton ID="lnkbtnBack" runat="server" CommandName="back">返回</asp:LinkButton></td>
</tr>
<tr>
<td style="width: 77px">
姓名:</td>
<td style="width: 100px">
<asp:Label ID="lblName" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"stuName") %>'></asp:Label></td>
</tr>
<tr>
<td style="width: 77px">
性别:</td>
<td style="width: 100px">
<asp:Label ID="lblSex" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"stuSex") %>'></asp:Label></td>
</tr>
<tr>
<td style="width: 77px">
爱好:</td>
<td style="width: 100px">
<asp:Label ID="lblHobby" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"stuHobby") %>'></asp:Label></td>
</tr>
</table>
</SelectedItemTemplate>
</asp:DataList></td>
</tr>
</table>
</div>
</form>
</body>
- 查看DataList控件中数据的详细信息
- 查看DataList控件中数据的详细信息1
- datalist实现点击查看详细信息
- 利用DataList实现单击查看某一行详细信息的功能
- 如何从DataList控件中读取某控件的数据。
- 利用CommandArgument 属性获取 datalist的中 控件数据绑定
- Datalist控件嵌套Datalist控件的数据绑定
- 查看数据库中每个表的详细信息
- DataList和ListView数据控件的使用
- DataList 中FooterTemplate 中控件的值
- DataList数据列表控件
- 数据绑定到DataList中ItemTemplate的时候,对里面控件的处理
- 数据绑定控件之一DataList控件的使用
- 在 DataList 或Repeater 控件中对数据进行排序
- 怎样在linux系统中查看文件的详细信息
- datalist的数据导入到Excel中
- 读取DataList控件中Labe控件应该注意的问题
- 数据绑定控件之DataList
- linux常用命令积累
- const iterator与const_iterator
- ubuntu 11.04的几个实用小技巧
- Core Dump
- hdu 1175 连连看
- 查看DataList控件中数据的详细信息
- delphi - bpl与dll之关系-创建于使用BPL包
- inet_pton inet_ntop 注意点使用
- Remove @Override annotation错误提示
- 网站数据分析的维度和指标
- jquery 图片预览
- 程序员技术练级攻略
- Active Object
- 终于干了点正事。。三天用了三个库opencv、emgu、aforge.net[2011.7.30]