ASP.NET中继器控件还是自定义实现?

ASP.NET中继器控件还是自定义实现?,asp.net,user-controls,repeater,Asp.net,User Controls,Repeater,你好 最近,我在各种网站和博客上读到了一些帖子,其中ASP.NET Repeater是经验丰富的程序员最常用和接受的一种。 有人写到,如果他提到他经常在求职面试中使用这个控件,他会认为ASP.NET程序员更好。 我很少使用它,这可能使我成为一个初学者: 这是我在需要动态重复某些控件时使用的实现 public class MyUserControl:UserControl { LocalizedCheckBox chb; LocalizedLabel lbl; TextBo

你好

最近,我在各种网站和博客上读到了一些帖子,其中ASP.NET Repeater是经验丰富的程序员最常用和接受的一种。 有人写到,如果他提到他经常在求职面试中使用这个控件,他会认为ASP.NET程序员更好。 我很少使用它,这可能使我成为一个初学者: 这是我在需要动态重复某些控件时使用的实现

public class MyUserControl:UserControl
{
    LocalizedCheckBox chb;
    LocalizedLabel lbl;
    TextBox txt;


    public MyUserControl()
    {
        //Instantiate controls
    //do something with them
}

public bool Checked
{
    get{ return chb.Checked;}
}
public string Text
{
    get{ return txt.Text; }
}
}


public partial class MyParentControl : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //           
    }
protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);

    foreach('something')
    {
        MyUserControl ctr = new MyUserControl();
        ctr.Text="some value";
        ctr.Checked= false;
        this.Panel1.Controls.Add(ctr);
    }
    }
protected void btn_Click(object sender, EventArgs e)
    {
        foreach (MyUserControl dControl in this.Panel1.Controls.OfType<MyUserControl>())
        {
            //do something
    string text = dControl.Text;
        }
    }
}
即使我在MyUserControl上添加了事件,我也从未遇到过这段代码的问题。当然,中继器控制也可以达到同样的效果,但我想知道为什么使用中继器更好

如果我改用repeater有什么好处


谢谢,中继器很容易绑定到数据源。

人, 您最好在NET3.5中使用repeater或listvew,为什么? -因为它是超级容易的数据绑定到任何数据源,使用Eval控件内部。 -你会得到很多模板,我经常在数据库没有返回结果时使用它,你可以在这里放一条消息通知用户,而不是显示空白屏幕。 -你可以控制渲染,你想要的是表,Div,UL,你只需要说出它的名字

我强烈建议您在新的listview中投资以重复内容


希望这能有所帮助

谢谢伙计,我想看看这种答案,我来看看列表视图。但是,当我看转发器的例子时,我看不出如果重复控制与多个事件、属性复杂,那么它有多容易……欢迎各位,一切都会变得像你们希望的那样复杂,但通常你们可以通过使用Ondatabound、Onitem create、,列表视图、网格等的etc事件。。然后从那里使用find control并将其转换为cast