powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ListView и встроенные в него элементы управления
13 сообщений из 13, страница 1 из 1
ListView и встроенные в него элементы управления
    #39292960
Vlad5780
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем добрый день. Надеюсь на помощь зала. Описание ситуации:
1.Есть ListView который посредством DataSorceID получает данные через SqlDataSource из некой таблицы_1 (база SQL).
2.В разделе ItemTemplate вся информация представляется через Label и все прекрасно видится и отображается.
3.В разделе InsertItemTemplate информация вводится через TextBox_ы и два DropDownList из которых каждый получает данные из таблицы_2 и таблицы_3 (таблицы справочники)
4.В SqlDataSource (который привязан к ListView) команда Insert производится через хранимую процедуру
5.Для полноценного выполнение команды Insert в SqlDataSource есть раздел InsertParameters
И вот с этого места начинаются косяки.

<InsertParameters>
<asp:ControlParameter Name="KodObezd" ControlID="ddlObezd" PropertyName="SelectedValue" Type="Int16" />
<asp:ControlParameter Name="KodEch" ControlID="hfKodEch" PropertyName="Value" Type="Byte" />
<asp:Parameter Name="KodSU" Type="Byte" />
<asp:Parameter Name="KodPeregon" Type="Int16" />
<asp:Parameter Name="Npp" Type="Int16" />
<asp:Parameter Name="Zamechan" Type="String" />
<asp:Parameter Name="DateRemoval" Type="DateTime" />
<asp:Parameter Name="Done" Type="Boolean" />
<asp:Parameter Name="Primechan" Type="String" />
</InsertParameters>

Первые два параметра это элементы управления, которые в ListView не входят, просто находятся на странице и с ними все в порядке (данные передаются корректно).
Параметры 3 и 4 это данные поступают от DropDownList_ов встроенных в раздел InsertItemTemlate.
Остальные параметры - это TextBox_ы так же находящиеся в разделе InsertItemTemlate.
При такой схеме, по нажатию кнопки "Сохранить", получаем новую запись в Таблице_1, где данные соответствуют тому, что вводили, но в полях KodSU и KodPeregon имеем NULL. Т.е. данные из DropDownList не прочитались. С TextBox_ами все замечательно.
Долго ломал голову. В качестве эксперемента вместо DropDownList_ов поставил TextBox_ы. Ввел в них нужные цифры - запись в Таблицу_1 добавилась идеальная. Все как надо. Но ведь мне не это надо. Тогда поменял типы параметров.
Вместо:
<asp:Parameter Name="KodSU" Type="Byte" />
<asp:Parameter Name="KodPeregon" Type="Int16" />
записал:
<asp:ControlParameter Name="KodSU" ControlID="ddlSU" PropertyName="SelectedValue" Type="Byte" />
<asp:ControlParameter Name="KodPeregon" ControlID="ddlPeregon" PropertyName="SelectedValue" Type="Int16" />

После заполнения компонентов нужными данными жму кнопку "Сохранить" - страница задумывается. Нет, желтый экран смерти не вываливается. Так обычно бывает когда SQL_ю, что то не нравится, а сказать не может. Признаюсь - я тоже не знаю как его об этом спросить. Пробовал через SqlDataSorce_Inserted отловить ошибку, но похоже SQL задумывается раньше этого события. Немного отвлекся, продолжу - после этого жму кнопку "Отменить", страница продолжает работать в штатном режиме. Проверяю Таблицу_1 - запись не добавилась.
Вообщем я понял так: DropDownList встроенный в ListView не стыкуется с параметрами. И я не могу это сделать. Не знаю, доходчиво ли я объяснил свою проблему. Но я сам не могу понять почему работает то, что правильно работает? Т. е откуда
<asp:Parameter Name=. . . />
берет значение которое я заношу в TextBox находящийся в разделе InsertItemTemplate. И почему не работает то, что должно работать. Почему параметр не видит значения при варианте:
<asp:ControlParameter Name=. . . />
Ведь если бы DropDownList_ы и TextBox_ы располагались не в ListView, а просто на странице в каком нибудь <div> тогда нужно было бы использовать именно ControlParameter.
Объясните пожалуйста, кто чем может?
Предупреждаю сразу - опыт у меня не ахти какой, а знаний еще меньше. Поэтому прошу отнестись с пониманием.
P.S. Пробовал внести куски кода, но получается не читабельно. Тяжело в нем разбираться. Если кто подскажет как сделать лучше, буду рад.
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39293200
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad5780, я не претендую на должность ShockerPro, но тем не менее Как мне оформить свое сообщение?
Ибо сообщение оформленное таким образом не хочется даже напрягаться и читать.
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39293251
Vlad5780
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем добрый день. Надеюсь на помощь зала. Описание ситуации:
1 .Есть ListView который посредством DataSorceID получает данные через SqlDataSource из некой таблицы_1 (база SQL).
2 .В разделе ItemTemplate вся информация представляется через Label и все прекрасно видится и отображается.
3 .В разделе InsertItemTemplate информация вводится через TextBox_ы и два DropDownList из которых каждый получает данные из таблицы_2 и таблицы_3 (таблицы справочники)
4 .В SqlDataSource (который привязан к ListView) команда Insert производится через хранимую процедуру
5 .Для полноценного выполнение команды Insert в SqlDataSource есть раздел InsertParameters
И вот с этого места начинаются косяки.

<InsertParameters>
<asp:ControlParameter Name="KodObezd" ControlID="ddlObezd" PropertyName="SelectedValue" Type="Int16" />
<asp:ControlParameter Name="KodEch" ControlID="hfKodEch" PropertyName="Value"Type="Byte" />
<asp:Parameter Name="KodSU" Type="Byte" />
<asp:Parameter Name="KodPeregon" Type="Int16" />
<asp:Parameter Name="Npp" Type="Int16" />
<asp:Parameter Name="Zamechan" Type="String" />
<asp:Parameter Name="DateRemoval" Type="DateTime" />
<asp:Parameter Name="Done" Type="Boolean" />
<asp:Parameter Name="Primechan" Type="String" />
</InsertParameters>

Первые два параметра это элементы управления, которые в ListView не входят, просто находятся на странице и с ними все в порядке (данные передаются корректно).
Параметры 3 и 4 это данные поступают от DropDownList_ов встроенных в раздел InsertItemTemlate.
Остальные параметры - это TextBox_ы так же находящиеся в разделе InsertItemTemlate.
При такой схеме, по нажатию кнопки "Сохранить" , получаем новую запись в Таблице_1 , где данные соответствуют тому, что вводили, но в полях KodSU и KodPeregon имеем NULL . Т.е. данные из DropDownList не прочитались. С TextBox_ами все замечательно.
Долго ломал голову. В качестве эксперемента вместо DropDownList_ов поставил TextBox_ы. Ввел в них нужные цифры - запись в Таблицу_1 добавилась идеальная. Все как надо. Но ведь мне не это надо. Тогда поменял типы параметров.
Вместо:
<asp:Parameter Name="KodSU" Type="Byte" />
<asp:Parameter Name="KodPeregon" Type="Int16" />
записал:
<asp:ControlParameter Name="KodSU" ControlID="ddlSU" PropertyName="SelectedValue" Type="Byte" />
<asp:ControlParameter Name="KodPeregon" ControlID="ddlPeregon" PropertyName="SelectedValue" Type="Int16" />

После заполнения компонентов нужными данными жму кнопку "Сохранить" - страница задумывается. Нет, желтый экран смерти не вываливается. Так обычно бывает когда SQL _ю, что то не нравится, а сказать не может. Признаюсь - я тоже не знаю как его об этом спросить. Пробовал через SqlDataSorce_Inserted отловить ошибку, но похоже SQL задумывается раньше этого события. Немного отвлекся, продолжу - после этого жму кнопку "Отменить" , страница продолжает работать в штатном режиме. Проверяю Таблицу_1 - запись не добавилась.
Вообщем я понял так: DropDownList встроенный в ListView не стыкуется с параметрами. И я не могу это сделать. Не знаю, доходчиво ли я объяснил свою проблему. Но я сам не могу понять почему работает то, что правильно работает? Т. е откуда
<asp:Parameter Name=. . . />
берет значение которое я заношу в TextBox находящийся в разделе InsertItemTemplate. И почему не работает то, что должно работать. Почему параметр не видит значения при варианте:
<asp:ControlParameter Name=. . . />
Ведь если бы DropDownList_ы и TextBox_ы располагались не в ListView, а просто на странице в каком нибудь <div> тогда нужно было бы использовать именно ControlParameter.
Объясните пожалуйста, кто чем может?
Предупреждаю сразу - опыт у меня не ахти какой, а знаний еще меньше. Поэтому прошу отнестись с пониманием.
P.S. Пробовал внести куски кода, но получается не читабельно. Тяжело в нем разбираться. Если кто подскажет как сделать лучше, буду рад.
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39293253
Vlad5780
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Axeleron, теперь будешь напрягаться ?
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39293255
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad5780Axeleron, теперь будешь напрягаться ?
Нет.
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39293533
Мойшик Трунькин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WebForms для вашего сценария - это получить все, что надо в *.cs, и там вызвать нормально, учитывая все ньюансы, хранимку

и потом не забыть для контролов DataBind()
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39293638
Vlad5780
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мойшик ТрунькинWebForms для вашего сценария - это получить все, что надо в *.cs, и там вызвать нормально, учитывая все ньюансы, хранимку

и потом не забыть для контролов DataBind()

Если не трудно, подскажите чем *.cs отличается от *.aspx.vb (мое приложение на vb.net)
И если я Вас правильно понял, Вы предлагаете весь механизм работы (выборка, изменение, добавление) с таблицами описать в ручную в этом самом *.cs, ну и не забыть обновить (DataBind) контролы после всех этих манипуляций.
Я согласен с тем, что такое решение работает стабильней. Но Вы правильно заметили " учитывая все нюансы ", а это для меня пока Рубикон. Пытаюсь разобраться, но не всегда получается. Например у меня до сих пор не получается достучаться до любого контрола встроенного в ListView (хочется верить, что лыжи не едут).
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39293729
Фёдор К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vlad5780...
Если не трудно, подскажите чем *.cs отличается от *.aspx.vb (мое приложение на vb.net)
- Языком: C#/VB.Net

Vlad5780И если я Вас правильно понял, Вы предлагаете весь механизм работы (выборка, изменение, добавление) с таблицами описать в ручную в этом самом *.cs, ну и не забыть обновить (DataBind) контролы после всех этих манипуляций.
Я согласен с тем, что такое решение работает стабильней. Но Вы правильно заметили " учитывая все нюансы ", а это для меня пока Рубикон. Пытаюсь разобраться, но не всегда получается. Например у меня до сих пор не получается достучаться до любого контрола встроенного в ListView (хочется верить, что лыжи не едут).
Я когда-то начинал с вебформс, но постепенно отказался по ряду неудобств. В частности, это слабый контроль за разметкой и клиентом. Гиморно работать с HXR/AJAX.

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

В вашем случае:
- Если вы сами являетесь архитектором, то м.б. есть смысл уже сейчас свернуть на паттерн MVC или подобный.
- Если сворачивать поздно или не возможно, то, ориентируясь на будущее, может есть смысл не заморачиваться с контролами, а работать как предложил Мойшик Трунькин - использовать "стандартные" средства для работы с БД в кодбихайнд, а результат выплевывать в тот же Label.
Заодно и, например, LINQ, паттерн Repository+UoW и многое нужное изучите.

Да, м.б. не кошерно, но ... решайте сами.

Просто соотношение вебформс/MVC в сети по примерам, наверное 1:10.
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39294299
Vlad5780
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята, всем большое спасибо! Благодаря вам я узнал что в asp.net существуют два направления WebForms и MVC. Я не шучу.
Web программированием я занимаюсь третий месяц. В перерывах между основной работой. На производстве был старый проект (сайт) написанный на vb.net, еще лет пять назад. Появилась необходимость расширить и углубить его функционал. Выбрали меня для решения этой задачи. Вот сейчас в голове полный хаос. Пришлось учить по старому проекту и asp (теперь знаю, что линию webforms) и vb.net, хотя по инету вижу, что преобладающая масса пишет на С. Но признаюсь, что сам факт web программирования мне интересен и увлекателен. Да и в голове бардак постепенно по полкам раскладывается. И конечно появилось желание узнать и попробовать - что такое MVC.
А со своей проблемой я разобрался. Как обычно - недоглядел нюанс. Старый проект он вроде и помогает, а иногда и столку сбивает. Ведь леплю по образу и подобию.
Еще раз всем спасибо! И даже пассивному (который не хочет напрягаться) товарищу спасибо. Оказывается делать цветной текст просто (но муторно).
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39294306
Березовский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: html
1.
Оказывается делать цветной текст просто (но муторно)


Кнопка "выделение исходников" для этого есть ..леать...
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39294485
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad5780Ребята, всем большое спасибо! Благодаря вам я узнал что в asp.net существуют два направления WebForms и MVC. Я не шучу.
Web программированием я занимаюсь третий месяц. В перерывах между основной работой. На производстве был старый проект (сайт) написанный на vb.net, еще лет пять назад. Появилась необходимость расширить и углубить его функционал. Выбрали меня для решения этой задачи. Вот сейчас в голове полный хаос. Пришлось учить по старому проекту и asp (теперь знаю, что линию webforms) и vb.net, хотя по инету вижу, что преобладающая масса пишет на С. Но признаюсь, что сам факт web программирования мне интересен и увлекателен. Да и в голове бардак постепенно по полкам раскладывается. И конечно появилось желание узнать и попробовать - что такое MVC.
А со своей проблемой я разобрался. Как обычно - недоглядел нюанс. Старый проект он вроде и помогает, а иногда и столку сбивает. Ведь леплю по образу и подобию.
Еще раз всем спасибо! И даже пассивному (который не хочет напрягаться) товарищу спасибо. Оказывается делать цветной текст просто (но муторно).

Это вы еще о жава скрипт фрейворках не узнали ....
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39294689
Фёдор К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vlad5780Ребята, всем большое спасибо! Благодаря вам я узнал что в asp.net существуют два направления WebForms и MVC. Я не шучу.
...
И конечно появилось желание узнать и попробовать - что такое MVC.
...
Заодно рекомендую узнать и попробовать (и послушать - не только заезженное "Bang Bang - My Baby Shot Me Down") Nancy FX (присутствует в нугет). Очень симпатичная девочка... :)
Это будет и ступенькой перед MVC.
...
Рейтинг: 0 / 0
ListView и встроенные в него элементы управления
    #39294857
Vlad5780
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все прямо как в сказке - чем дальше, тем страшнее. Неужели это все вмещается в одну голову?
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ListView и встроенные в него элементы управления
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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