Як додати користувальницькі елементи керування до ретранслятора

Сценарій:

  • UsrControl: custom user control, which contains a textbox and a button, rederend horizontally (in one line).

  • UsrControlContainer: custom user control, which should be able to display multiple UsrControl objects (each object in seperate line, so the Seperator template will probably be
    . This control also contains a button, which adds new UsrControl to the collection.

Мій код:



    

    
    

І:

protected void Button1_Click(object sender, EventArgs e)
{
    rptExample.DataSource = new List {new UsrControl(), new UsrControl()};
    rptExample.DataBind();
}

Просте запитання - що я повинен вставити в ItemTemplate для виконання цієї роботи?

Редагувати - Я також хочу передавати деякі параметри до UsrControl перед його відтворенням.

0

2 Відповіді


     
          
     
     
protected void Button1_Click(object sender, EventArgs e) { rptExample.DataSource = Enumerable.Range(0, 2); rptExample.DataBind(); }
2
додано
Це працює, дякую :) Але що, якщо я хочу передавати параметри UsrControl?
додано Автор sventevit, джерело

Після відповіді на ваше запитання. Ви можете зловити кожен обов'язковий об'єкт у події ItemDataBound. Так, наприклад, як я використовував, встановлював цілий об'єкт як властивість користувальницького керування.

protected void PersonesRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
        PersonLine line = (PersonLine)e.Item.FindControl("Person1");
        line.Person = e.Item.DataItem as Osoba;
    }
}

Звичайно, ви повинні додати обробника події до свого ретранслятора:


        
    

1
додано
var chat = new Chat();
var chat = new Chat();
642 учасників

Обсуждение вопросов по C# / .NET / .NET Core / .NET Standard / Azure Сообщества-организаторы: — @itkpi — @dncuug