Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Выборка данных их динамической таблицы / 14 сообщений из 14, страница 1 из 1
21.03.2013, 12:19
    #38192889
TataS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
Есть вот такая проблема:
Строится динамически таблица, в которой подгружаются контролы RadioButton и TextBox.
Необходимо после ручного ввода данных в эти контролы как-то эти данные сохранить.
Вот код, по которому создается таблица с TextBox:

Dim tRow As New TableRow()
Dim tCell As New TableCell()

dim tb As TextBox
tb = New TextBox
tb.ID = "tb_ID_1"

tb.Font.Bold = False
tb.Text = comm
tb.Wrap = True
tb.TextMode = TextBoxMode.MultiLine
tb.Height = 30
tb.Width = 250

tCell.Controls.AddAt(0, tb)

На страницу также выведена кнопка, при нажатии которую я хочу достучаться до контрола tb и прочитать введенные данные.

Protected Sub Button3_Click(sender As Object, e As System.EventArgs) Handles Button3.Click
Dim cnt As Control = Master.FindControl("ContentPlaceHolder1")
Dim tb_ID_1 As TextBox = cnt.FindControl("tb_ID_1")
End Sub

Но контрол НЕ ВИДЕН. Очень нужна помощь.
...
Рейтинг: 0 / 0
21.03.2013, 12:26
    #38192908
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
TataSОчень нужна помощь.репитер
или гридвью
или листвью
....
...
Рейтинг: 0 / 0
21.03.2013, 12:33
    #38192923
TataS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
Паганель,

Дело в том, что стоит задача написания заполнения опросника, поэтому у меня на страницу выводятся несколько TextBox, и помимо них еще несколько RadioButton.
Если использовать что-то типа GridView, то придется для каждого вопроса нажимать "Edit", а мне надо сразу заполнить все ответы и по одной кнопке ответы сохранить.
Подошел вариант динамической таблицы, но вот проблема с извлечением внесенных данных.
...
Рейтинг: 0 / 0
21.03.2013, 12:38
    #38192940
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
1) текстбоксы выведите репитером
2) при нажатии на кнопку загляньте в Request.Form
...
Рейтинг: 0 / 0
21.03.2013, 12:48
    #38192969
TataS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
Паганель,
Если вам не трудно, то напишите пожалуйста подробнее ваше решение.
...
Рейтинг: 0 / 0
21.03.2013, 12:51
    #38192974
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
TataSПаганель,
Если вам не трудно, то напишите пожалуйста подробнее ваше решение.какой из двух пунктов?
...
Рейтинг: 0 / 0
21.03.2013, 12:53
    #38192975
TataS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
Паганель,
А оба возможно?
...
Рейтинг: 0 / 0
21.03.2013, 13:04
    #38193005
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
            <asp:LinqDataSource ID="MyDataSource" runat="server" 
                OnSelecting="MyDataSource_Selecting" />
            <table>
            <asp:Repeater ID="MyRepeater" runat="server" DataSourceID="MyDataSource">
                <ItemTemplate>
                    <tr><td>
                    <asp:TextBox ID="MyTextBox" runat="server" Text="comm"
                        Wrap="true" TextMode="MultiLine" Height="30" Width="250" />
                    </td></tr>
                </ItemTemplate>
            </asp:Repeater>
            </table>
            <asp:Button ID="MyButton" runat="server" Text="MyButton" OnClick="MyButton_Click" />
            

            <asp:Label ID="MyLabel" runat="server" />

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
        protected void MyDataSource_Selecting(object sender, LinqDataSourceSelectEventArgs e)
        {
            e.Result = new[] { 1, 2, 3 };
        }

        protected void MyButton_Click(object sender, EventArgs e)
        {
            MyLabel.Text = Request.Form["MyRepeater$ctl00$MyTextBox"];
        }

Visual Basic не знаю, уж извините
две строчки кода сами переведете на свой язык, я надеюсь
удачи
...
Рейтинг: 0 / 0
21.03.2013, 13:22
    #38193072
TataS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
Паганель,
Спасибо, буду пробовать.
...
Рейтинг: 0 / 0
21.03.2013, 13:46
    #38193139
carrotik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
TataS,

.. у вас TextBox находится в ячейке, которая находится в строке, которая находится в таблице, которая находится в "доме, который построил Джек", то есть в КонтентПлейсХолдере мастер-страницы ... вы сначала достучитесь до таблицы, а потом уже что-то типа

Код: vbnet
1.
2.
3.
4.
For Each row As TableRow In Table1.Rows
   Dim tb As TextBox = CType(row.FindControl("tb_1"), TextBox)
   Dim tbtext As String = tb.Text
Next



..ну, примерно ...
...
Рейтинг: 0 / 0
21.03.2013, 14:14
    #38193221
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
TataS
Но контрол НЕ ВИДЕН. Очень нужна помощь.
Что бы он был виден, его нужно заново создать в Page_Init, тогда на момент обработки Button3_Click он будет доступен и заполнен введенным значением.
...
Рейтинг: 0 / 0
21.03.2013, 14:40
    #38193294
TataS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
Паганель
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
            <asp:LinqDataSource ID="MyDataSource" runat="server" 
                OnSelecting="MyDataSource_Selecting" />
            <table>
            <asp:Repeater ID="MyRepeater" runat="server" DataSourceID="MyDataSource">
                <ItemTemplate>
                    <tr><td>
                    <asp:TextBox ID="MyTextBox" runat="server" Text="comm"
                        Wrap="true" TextMode="MultiLine" Height="30" Width="250" />
                    </td></tr>
                </ItemTemplate>
            </asp:Repeater>
            </table>
            <asp:Button ID="MyButton" runat="server" Text="MyButton" OnClick="MyButton_Click" />
            

            <asp:Label ID="MyLabel" runat="server" />

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
        protected void MyDataSource_Selecting(object sender, LinqDataSourceSelectEventArgs e)
        {
            e.Result = new[] { 1, 2, 3 };
        }

        protected void MyButton_Click(object sender, EventArgs e)
        {
            MyLabel.Text = Request.Form["MyRepeater$ctl00$MyTextBox"];
        }

Visual Basic не знаю, уж извините
две строчки кода сами переведете на свой язык, я надеюсь
удачи

В общем ничего не получилось.
Написала:
<asp:LinqDataSource ID="MyDataSource" runat="server"
OnSelecting="MyDataSource_Selecting" />

<table>
<asp:Repeater ID="MyRepeater" runat="server" DataSourceID="MyDataSource">
<ItemTemplate>
<tr>
<td>
<asp:TextBox ID="MyTextBox" runat="server" Text="comm"
Wrap="true" TextMode="MultiLine" Height="30" Width="250" />
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
и
Sub MyDataSource_Selecting(sender As Object, e As LinqDataSourceSelectEventArgs)
Dim mas() As String = {"1", "2", "3"}
e.Result = mas
End Sub
На странице открывается 3 TextBox

Protected Sub Button3_Click(sender As Object, e As System.EventArgs) Handles Button3.Click
Dim ppp As String = Request.Form("ContentPlaceHolder1$MyRepeater$ctl00$MyTextBox")

Dim rrr1 = MyRepeater.FindControl("ctl00$ContentPlaceHolder1$MyRepeater$ctl01")
Dim rrr2 = MyRepeater.FindControl("ctl00$ContentPlaceHolder1$MyRepeater$ctl01$MyTextBox")

Dim ttt = Request.Form("ctl00$ContentPlaceHolder1$MyRepeater$ctl01")
End Sub

Все эти переменные имеют значение Nothing, до текста в TextBox я так и не достучалась.
...
Рейтинг: 0 / 0
21.03.2013, 14:46
    #38193309
Паганель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
TataSНа странице открывается 3 TextBoxну вот, а Вы говорите ничего не получилось
первый шаг же получился

теперь поставьте точку останова внутри обработчика кнопки и поисследуйте Request.Form.AllKeys
...
Рейтинг: 0 / 0
21.03.2013, 15:20
    #38193397
TataS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных их динамической таблицы
ПаганельTataSНа странице открывается 3 TextBoxну вот, а Вы говорите ничего не получилось
первый шаг же получился

теперь поставьте точку останова внутри обработчика кнопки и поисследуйте Request.Form.AllKeys

Огромное спасибо! Достучалась таки до TextBox.
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Выборка данных их динамической таблицы / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]