2010-06-28 6 views
4

Как добавить нижний колонтитул динамически в gridview. с .. пожалуйста текстовые поля дают представления ...Как добавить нижний колонтитул динамически в gridview. с текстовыми полями

+0

Под словом «нижний колонтитул», вы хотите, чтобы вы заполняли последнюю строку в сетке или хотите, чтобы строка была отделена от всех остальных строк и привязана к нижней части GridView? –

ответ

5

Поскольку в виде сетки может быть только один нижний колонтитул IMO, лучше добавить нижний колонтитул, установив для свойства ShowFooter вид сетки на true. Здесь может быть полезно установить свойство FooterStyle.

Приходя к программной части,

protected void MyGridView_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.Footer) 
    {    
    TextBox txt = new TextBox(); 
      // set properties of text box 
    e.Row.Cells[0].Controls.Add(txt); 
    } 
} 

Попробуйте это и комментарий.

Edit: Это будет полезно http://www.asp.net/data-access/tutorials/displaying-summary-information-in-the-gridview-s-footer-cs

0

Пожалуйста, следуйте

1.Assign DataSource в Gridview
2.In RowDataBound Найти в GridView в ROWTYPE
3. Если ROWTYPE является FooterRow
4 .Dynamically Добавить текстовое поле или требуемый элемент управления в строке (каждая строка является продавцом как TableRow)
вы можете настроить его.

0

Существует только одна сноска строки, так что вы можете контролировать, если он отображается динамически в коде следующим образом:

if (GridView.EditIndex == -1) 
    GridViewProject.FooterRow.Visible = true; 
} 
else 
{ 
    GridViewProject.FooterRow.Visible = false; 
} 

В случае RowDataBound проверить строку тип и установить любые значения по умолчанию, необходимые там: Я считаю полезным использовать раскрывающиеся списки, где это возможно, чтобы пользователь не вводил плохие данные.

switch (e.Row.RowType) 
{ 
    case DataControlRowType.Header: 
    case DataControlRowType.DataRow: 
    case DataControlRowType.Footer: 
     //popluate ddls 
} 
Смежные вопросы