如何使用c#在一对转发器之间移动数据 [英] how to move data between a pair of repeater using c#

查看:98
本文介绍了如何使用c#在一对转发器之间移动数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个与数据源绑定的转发器,当我们检查一些行并点击按钮然后数据显示在另一个转发器中时,它也有chechbox

解决方案

< blockquote>让你有两个名为rpt1和rpt2的reapeter。您希望在单击按钮时将项目从rpt1传输到rpt2。我认为这是最适合你的解决方案.....检查它



  protected   void  btnSend_Click( object  sender,EventArgs e)
{
DataTable dt = new DataTable();
dt.Columns.Add( MenuName);
dt.Columns.Add( MenuID);

foreach (RepeaterItem grdRow in rpt1.Items) /// ///////////从转发器添加新数据到数据表DT
{
if (((CheckBox)grdRow.FindControl( chkSelect))。已检查)
{
DataRow drow = dt.NewRow();

标签lblMenuName =(标签)grdRow.FindControl( lblMenuName) ;

HiddenField hdnID =(HiddenField)grdRow.FindControl( hdnID) ;

drow [ MenuName] = lblMenuName.Text;
drow [ MenuID] = hdnID.Value;

dt.Rows.Add(卓尔);
}
}
如果(dt.Rows.Count > 0
{
rpt2.DataSource = dt;
rpt2.DataBind();
}
}

受保护 void rpt2_RowDataBound( object sender,RepeaterItemEventArgs e)
{

if (e .Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataRowView dr =(DataRowView)e.Item.DataItem;

// e.Row.Cells [0] .Text = dr [MenuName ] .ToString();
标签lblMenuName = e.Item.FindControl( lblMenuName as 标签;
lblMenuName.Text = dr [ MenuName]。ToString();

HiddenField hdnID = e.Item.FindControl( hdnID)< span class =code-keyword> as HiddenField;
hdnID.Value = dr [ MenuID]。ToString();
}
}


亲爱的,

您可以使用后端轻松解决您的问题(数据库结束)。


I have one repeater which is bind with data sources and it have chechbox also now when we checked some row and click on button then data are show in another repeater

解决方案

Let you have two reapeter named rpt1 and rpt2. You want to transfer Item from rpt1to rpt2 on button click which are clicked. I think this is the best solution for you.....check it

protected void btnSend_Click(object sender, EventArgs e)
    {        
        DataTable dt = new DataTable();
        dt.Columns.Add("MenuName");
        dt.Columns.Add("MenuID");

        foreach (RepeaterItem grdRow in rpt1.Items) ////////////// Add new Data from repeater TO Datatable DT
        {
            if (((CheckBox)grdRow.FindControl("chkSelect")).Checked)
            {
                DataRow drow = dt.NewRow();

                Label lblMenuName = (Label)grdRow.FindControl("lblMenuName");

                HiddenField hdnID = (HiddenField)grdRow.FindControl("hdnID");

                drow["MenuName"] = lblMenuName.Text;
                drow["MenuID"] = hdnID.Value;

                dt.Rows.Add(drow);
            }
        }
        if (dt.Rows.Count > 0)
        {
            rpt2.DataSource = dt;
            rpt2.DataBind();
        }
    }

protected void rpt2_RowDataBound(object sender, RepeaterItemEventArgs e)
    {

        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
        {
            DataRowView dr = (DataRowView)e.Item.DataItem;

            //e.Row.Cells[0].Text = dr["MenuName"].ToString();
            Label lblMenuName = e.Item.FindControl("lblMenuName") as Label;
            lblMenuName.Text = dr["MenuName"].ToString();

            HiddenField hdnID = e.Item.FindControl("hdnID") as HiddenField;
            hdnID.Value = dr["MenuID"].ToString();
        }
    }


Dear,
you can easily solve your problem using back-end (Database End ).


这篇关于如何使用c#在一对转发器之间移动数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆