У меня есть набор данных, и я должен отображать его в веб-приложении. Вот то, что набор данных выглядит следующим образом:Изменение ячейки WebGrid в текстовом поле
Point_ID Project No. Project Manager Comments
A007 1304 Oscar Duran Found destroyed
A008 1304 Oscar Duran Helicopter access
A009 1356 Julio Bravo Airport parking lot
Вот что у меня есть для моего кода:
@{
var db = Database.Open("ControlPoints");
var SelectCommand = "SELECT * FROM AllControlMergedWD";
var SearchTerm = "";
if(!Request.QueryString["SearchCP"].IsEmpty()){
SelectCommand = "SELECT * FROM AllControlMergedWD WHERE Point_ID = @0";
SearchTerm = Request.QueryString["SearchCP"];
}
if(!Request.QueryString["SearchProject"].IsEmpty()){
SelectCommand = "SELECT * FROM AllControlMergedWD WHERE [Project Used on] LIKE @0";
SearchTerm = "%" + Request["SearchProject"] + "%";
}
var SelectData = db.Query(SelectCommand, SearchTerm);
var grid = new WebGrid(source: SelectData, rowsPerPage: 10);
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Airborne Imaging Control Points Database</title>
<style type="text/css">
.grid { margin: 4px; border-collapse: collapse; width: 600px; }
.grid th, .grid td { border: 1px solid #C0C0C0; padding: 5px; }
.head { background-color: #E8E8E8; font-weight: bold; color: #FFF; }
.alt { background-color: #E8E8E8; color: #000; }
</style>
</head>
<body>
<h1>Airborne Imaging Control Points Database</h1><br/><br/>
<form method="get">
<fieldset>
<legend>Search Criteria</legend>
<div>
<p><label for="SearchCP">Control Point ID:</label>
<input type="text" name="SearchCP" value="@Request.QueryString["SearchCP"]" placeholder="Leave blank to list all"/>
<input type="submit" value="Search"/></p>
</div>
<div>
<p><label for="SearchProject">Project:</label>
<input type="text" name="SearchProject" value="@Request.QueryString["SearchProject"]" />
<input type="Submit" value="Search" /></p>
</div>
</fieldset>
</form>
<div>
@grid.GetHtml(
tableStyle: "grid",
headerStyle: "head",
alternatingRowStyle: "alt",
columns: grid.Columns(
grid.Column("Point_ID"),
grid.Column("Project No."),
grid.Column("Project Manager"),
grid.Column("Comments", format: @<text>@Html.TextBox("Comments")</text>)
)
)
<br/><br/>
</div>
</body>
</html>
То, что я пытаюсь сделать, это превращение клеток «Комментарии» в виде элементов (текст), так что любой, кто имеет доступ к Приложению, сможет добавлять комментарии, редактировать или обновлять статусы текущего состояния точек. Не могли бы вы помочь мне в этом?
Благодарим вас заблаговременно.
UPDATE
я смог добавить поле текстового поля в колонке «Комментарии» (я обновил свой код, указанный выше). Теперь у меня осталось сохранение комментариев, которые вводятся в базу данных.
Возможный дубликат [Добавить столбцы динамически в Grid-view с помощью itemtemplate] (http://stackoverflow.com/questions/23592785/add-columns-dynamically-to-grid-view-with-itemtemplate) – phillip
Я пытался чтобы применить ответ в указанной вами ссылке, но я не думаю, что это относится к веб-страницам asp.net. –