| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1211 人关注过本帖
标题:[求助]如何取得Reapter控件里的值啊?
只看楼主 加入收藏
winsonjie
Rank: 1
等 级:新手上路
帖 子:129
专家分:0
注 册:2006-5-20
收藏
 问题点数:0 回复次数:3 
[求助]如何取得Reapter控件里的值啊?
如何取得Reapter控件里的值啊?比如Reapter绑字了两列数据:一列是:name,另一列是id..如何取得id列的值???
急啊..请各位帮帮手..谢了
搜索更多相关主题的帖子: Reapter 控件 
2006-10-23 18:35
soldierluo
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2006-10-19
收藏
得分:0 
Reapter.Rows.Items[].Control[]
2006-10-23 19:22
winsonjie
Rank: 1
等 级:新手上路
帖 子:129
专家分:0
注 册:2006-5-20
收藏
得分:0 

这个代码在哪里定的啊???
我在这这个事件里写.它根本就不响应
private Void Repeater1_ItemCommand(object source,System.Web.UI.WebControls.RepeaterCommandEventArgs e)
{
}
就连简单的Label.Text="OK";在这事件里也不能执行..请问如何才能执行这个事件啊


2006-10-23 20:42
lian8088
Rank: 1
等 级:新手上路
威 望:1
帖 子:101
专家分:0
注 册:2006-8-21
收藏
得分:0 

我这里有DataGrid的,不懂合不合适你用,你自己看看吧!
-----------------------------------------------------------------------------------------------------------
aspx页面代码:
-----------------------------------------------------------------------------------------------------------
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="Cisoft.CMS.Web.WebForm1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title></title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<script language="javascript" type="text/javascript">
//-------------------------------------------------------------
// Select all the checkboxes (Hotmail style)
//-------------------------------------------------------------

function SelectAllCheckboxes(spanChk)
{
var xState=spanChk.checked;

elm = spanChk.form.elements;
for(i = 0; i < elm.length; i++)
{
if(elm[i].type == "checkbox" && elm[i].id != spanChk.id)
{
if(elm[i].checked!=xState)
elm[i].click();
}
}
}
</script>
</HEAD>
<body ms_positioning="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:DataGrid id="DataGrid1" runat="server" Width="100%" AutoGenerateColumns="False">
<HeaderStyle Font-Bold="True" BackColor="#d8e4f8"></HeaderStyle>
<Columns>
<asp:BoundColumn Visible="False" DataField="ArticleId" HeaderText="编号"></asp:BoundColumn>
<asp:TemplateColumn>
<HeaderStyle Width="40px"></HeaderStyle>
<HeaderTemplate>
<p align="left">操作</p>
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox id="chkSelect" runat="server" AutoPostBack="false"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<HeaderStyle Width="230px"></HeaderStyle>
<HeaderTemplate>
<p align="center">标题</p>
</HeaderTemplate>
<ItemTemplate>
<p align="left">
<%# DataBinder.Eval(Container.DataItem,"Title")%>
</p>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
<table>
<tr>
<td>
<asp:checkbox id="CheckBox1" onclick="javascript:SelectAllCheckboxes(this);" runat="server" Text="全选"></asp:checkbox>&nbsp;&nbsp;&nbsp;
<asp:button id="btnDelete" runat="server" CssClass="btn1" Height="22px" Text="删除" CausesValidation="False"></asp:button>
</td>
</tr>
</table>
</form>
</body>
</HTML>
-----------------------------------------------------------------------------------------------------------
aspx.cs代码:
-----------------------------------------------------------------------------------------------------------
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace Cisoft.CMS.Web
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.CheckBox CheckBox1;
protected System.Web.UI.WebControls.Button btnDelete;
protected System.Web.UI.WebControls.DataGrid DataGrid1;

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面

if(!IsPostBack)
{
BindData();
}
}

/// <summary>
/// 给DataGrid1绑定数据
/// </summary>
private void BindData()
{
string strWhere = "";

DataGrid1.DataSource = GetList(strWhere);
DataGrid1.DataBind();
}

private void btnDelete_Click(object sender, System.EventArgs e)
{
ArrayList myArrayList = getIDs();

if(myArrayList.Count != 0)
{
DeleteBated(myArrayList);
alert("记录已成功删除!","WebForm1.aspx",this.Page);
}
else
{
alert("请选择要删除的记录!",this.Page);
}
}

#region 删除
//获取ID号集的方法:
//遍历所有DataGrid中的所有行(Items),
//取得指定单元格(Cells),然后找到该单元格的控件(Controls)
public ArrayList getIDs()
{
ArrayList myArrayList = new ArrayList();
CheckBox box;
for(int i = 0 ;i < this.DataGrid1.Items.Count ; i ++)
{
box = DataGrid1.Items[i].FindControl("chkSelect") as CheckBox;

if(box.Checked)
{
myArrayList.Add(Convert.ToInt32(this.DataGrid1.Items[i].Cells[0].Text));
}
}
return myArrayList;
}

/// <summary>
/// 根据ID删除记录,如果ID为-1,则删除全部
/// </summary>
/// <param name="id">ID号</param>
public void DeleteOne(int id)
{
if(id == -1)
return;
else
Delete(id);
}

/// <summary>
/// 根据ID号成批删除
/// </summary>
/// <param name="al">ID号列表</param>
public virtual void DeleteBated(ArrayList myArrayList)
{
int id;

for(int i = 0 ;i < myArrayList.Count ; i ++)
{
id = (int)myArrayList[i]; //获取的主题ID
this.DeleteOne(id); //删除本主题
}
}

/// <summary>
/// 根据给定的ID删除记录
/// </summary>
/// <param name="iID">给定的ID号</param>
public void Delete(int iID)
{
//在此处放置删除记录的代码
}
#endregion

/// <summary>
/// 根据给定的条件获取记录
/// </summary>
/// <param name="strWhere">给定的条件</param>
/// <returns></returns>
public DataSet GetList(string strWhere)
{
//在此处放置获取记录的代码
}

/// <summary>
/// 消息提示窗
/// </summary>
/// <param name="str_Message">消息内容</param>
/// <param name="page"></param>
public void alert(string str_Message,System.Web.UI.Page page)
{
page.RegisterStartupScript("","<script language='javascript' type='text/javascript'>alert('"+ str_Message +"');</script>");
}

/// <summary>
/// 消息提示窗
/// </summary>
/// <param name="str_Message">消息内容</param>
/// <param name="page"></param>
public void alert(string str_Message,string strPage,Page page)
{
page.RegisterStartupScript("","<script language='javascript' type='text/javascript'>"
+ "if (alert('"+str_Message+"')==true){"
+ "window.location.href = '"+ strPage +"';}"
+ "else{window.location.href = '"+ strPage +"';}</script>");
}

#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion


}
}
-----------------------------------------------------------------------------------------------------------
上面的代码是在vs2003下运行成功的,同时只要消微的修改一下就可以用在vs2005中的GridView中!

[此贴子已经被作者于2006-10-24 14:38:45编辑过]


2006-10-24 14:37
快速回复:[求助]如何取得Reapter控件里的值啊?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.056360 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved