Нужно добавить текстовые поля в ячейку сетки при редактировании - PullRequest
0 голосов
/ 23 сентября 2011

Я мог бы действительно помочь с этим.Я искал решение в Интернете, но не смог найти особой помощи.

Мне нужно добавить текстовые поля в ячейку редактирования gridview, основываясь на количестве строк текста в одной изклетки.Я закодировал захват количества текстовых полей, которые мне нужно добавить.

Но я не уверен, какое событие Gridview добавляет код при переходе в режим редактирования, чтобы запустить цикл, который будет вставлять дополнительные текстовые поля вопределенный столбец строки, выбранной для редактирования.

Пользователь видит colA, в котором есть текст со строкой, встроенной в vbCRLF, скажем:

"Это образец текста."

"Строка 2"

" Line3 "

Мой код читает три возврата каретки, перевод строки.Поэтому, когда пользователь переходит в режим редактирования, я хочу предоставить одно текстовое поле для каждой строки или, более точно, добавить еще два, так как одно уже будет существовать.

Спасибо за любую возможную помощь по этому вопросу.

С уважением,

ОБНОВЛЕНИЕ: Вот решение ......

Private Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound 
If (e.Row.RowState And DataControlRowState.Edit) > 0 Then 
  Dim ph As PlaceHolder = DirectCast(e.Row.FindControl("PlaceHolder1"), PlaceHolder) 
  For I = 1 To BoxesNeeded 
    Dim txtB As New TextBox 
    txtB.ID = "txtBEdit" & I.ToString("D2") 
    ph.Controls.Add(txtB) 
    Dim litCtrl As New Literal 
    litCtrl.ID = "litCtrl" & I.ToString("D2") 
    litCtrl.Text = "<br />" 
    ph.Controls.Add(litCtrl) 
  Next I 
End If 

End Sub

1 Ответ

0 голосов
/ 04 декабря 2012

Вот решение ....

Private Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound 
    If (e.Row.RowState And DataControlRowState.Edit) > 0 Then 
        Dim ph As PlaceHolder = DirectCast(e.Row.FindControl("PlaceHolder1"), PlaceHolder) 
        For I = 1 To BoxesNeeded 
            Dim txtB As New TextBox 
            txtB.ID = "txtBEdit" & I.ToString("D2") 
            ph.Controls.Add(txtB) 
            Dim litCtrl As New Literal 
            litCtrl.ID = "litCtrl" & I.ToString("D2") 
            litCtrl.Text = "<br />" 
            ph.Controls.Add(litCtrl) 
        Next I 
    End If 

спасибо,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...