У мене є назва стовпця таблиці під назвою QUESTIONTEXTде в цьому стовпці є 3 питання. Отже, є 3 ряди запитань. Я додаю ці питання до першого стовпця, який працює як шарм. Тепер я хочу додати текстове поле або прапорець або перемикач поруч із ним у тій же комірці або до наступного стовпця в тому ж рядку.
У мене 1 запитання.
1: Як додати елемент керування до того ж рядка, що і текст, який я зараз додаю, або до наступного стовпця в тому ж рядку таблиці ?.
СЦЕНАРІЯ: У цій же таблиці у мене стовпець QUESTIONTEXT У мене також стовпець TYPEID з числовими даними. Або 1, або 2
ідея полягає в тому, що я буду знати, який контроль створити для цього конкретного питання за номером TYPEID
1 для тексту
2 для прапорця
Я можу схопити таке число:
if (dataRow["TYPEID"].ToString() == "1")
Отже, для першого його 1 і я хочу додати текстове поле. Мені просто потрібно створити текстове поле або прапорець.
Ось як я зараз додаю запитання до першого стовпця таблиці.
TableRow tableRow;
TableCell tableCell;
foreach (DataTable dataTable in ds.Tables)
{
foreach (DataRow dataRow in dataTable.Rows)
{
tableRow = new TableRow();
tableCell = new TableCell();
TableRow tableRow2 = new TableRow();
TableCell tableCel2 = new TableCell();
tableCell.Text = dataRow["QUESTIONTEXT"].ToString();
if (dataRow["TYPEID"].ToString() == "1")
tableRow.Cells.Add(tableCell);
myTable.Rows.Add(tableRow);
}
}
Я також створив перерахунок, щоб допомогти в цьому процесі, але не впевнений, чи допоможе це!
public enum typeID : byte
{
text = 1,
multiple_choice = 2
};
Не можете комусь допомогти? будь ласка!
Відповіді:
4 для відповіді № 1спробуйте це для додавання другого стовпця в тому ж рядку
TableRow tableRow;
TableCell tableCell;
TableCell tableCell2;
foreach (DataTable dataTable in ds.Tables)
{
foreach (DataRow dataRow in dataTable.Rows)
{
tableRow = new TableRow();
tableCell = new TableCell();
tableCell.Text = dataRow["QUESTIONTEXT"].ToString();
tableCell2 = new TableCell();
switch (dataRow["TYPEID"].ToString())
{
case "1":
Label lbl = new Label();
lbl.Text = "";
tableCell2.Controls.Add(lbl);
break;
case "2":
CheckBox chk = new CheckBox();
chk.Text = "";
tableCell2.Controls.Add(chk);
break;
}
tableRow.Cells.Add(tableCell);
tableRow.Cells.Add(tableCell2);
myTable.Rows.Add(tableRow);
}
}