Nano Hash - криптовалюты, майнинг, программирование

Скопируйте и оставьте флажки на повторителе

У меня есть повторитель, который имеет некоторые элементы управления, которые являются флажками. Я хотел бы скопировать все элементы в повторителе, кроме флажков, где на их место я скопирую значение флажка. Цель состоит в том, что я хотел бы экспортировать всю информацию из ретранслятора в документ Excel в формате xls. Однако это не позволяет мне иметь флажки, поэтому я хочу их удалить.

Как мне это сделать, пожалуйста?

Я пытался:

for (int j =0; j<repeater1.Items.Count; j++)
{
    RepeaterItem repItem = repeater1.Items[j];

    foreach (Control c in repItem.Controls)
    {
        if (!(c is CheckBox))
        {
            Control c2 = c;
            repeater2.Items[j].Controls.Add(c2);
        }
    }
}

Но это дает мне эту ошибку:

Коллекция была изменена; операция перечисления может не выполняться.

25.05.2011

  • если ваш товар содержит флажок, вы не хотите показывать? 25.05.2011
  • Я не хочу, чтобы он был частью повторителя, потому что тогда мне нужно экспортировать в excel, а он не принимает флажки 25.05.2011
  • Просто измените свой вопрос и объясните, что вам действительно нужно. 25.05.2011
  • Repeater2 — это отдельный повторитель на странице или новый повторитель, который вы объявляете в коде? 25.05.2011

Ответы:


1

Вы написали в комментарии, что хотите экспортировать свой репитер, у которого стоит галочка. Не разрешено экспортировать флажок в Excel, поэтому вы хотите удалить флажок перед экспортом.

Вот один из способов сделать это... просто добавьте это на свою страницу и попробуйте....

public override void VerifyRenderingInServerForm(Control control)
{
}

В качестве альтернативы, что если вы экспортируете свой DataTable вместо repeater ?

Если вышеперечисленное не работает, и вы хотите выполнить итерацию, а затем экспортировать, то вот код...

protected void btnExport_Click(object sender, EventArgs e)
{
    StringWriter sw = new StringWriter();
    HtmlTextWriter htw = new HtmlTextWriter(sw);

    string attachment = "attachment; filename=FileName" + DateTime.Now.ToString() + ".xls";

    Response.ClearContent();
    Response.AddHeader("content-disposition", attachment);
    Response.ContentType = "application/ms-excel";

    foreach (RepeaterItem item in Repeater1.Items)
    {
       CheckBox chk= item.FindControl("CheckBox") as CheckBox;
       chk.Visible = false;
    }

    Repeater1.RenderControl(htw);

    Response.Write(sw.ToString());
    Response.End();
}
25.05.2011
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..