RE: DropDown в гриде.. Есть вопросы. (23 декабря 2008 г. / 19:04)
В общем, сделал такой код для формлоад:
If Page.IsPostBack = FalseThen
Dim cmb As DropDownList = DirectCast(GridView1.HeaderRow.FindControl("DropDownList1"), DropDownList)
cmb.DataSource = SqlDataSource1
cmb.DataValueField = "LeaderID"
cmb.DataTextField = "LeaderName"
cmb.DataBind()
cmb.Items.Add("")
EndIf
но при перегрузке страницы, в ддл становится пустой список. ничего туда не грузится. мне нужно при смене DropDownList1_SelectedIndexChanged перебиндить грид. А без EnabledEventState=True
этого не сделаешь.
П.С. добавляю в конце пустую строчку. а как её вытянуть на самый верх дропдауна? а то она получается в самом низу. а индекса нету... а хотелось бы чтобы при её выборе индекс был равен 0.
RE: DropDown в гриде.. Есть вопросы. (23 декабря 2008 г. / 17:27)
Поставил для дропдауна EnabledEventState=True. В событии Page_Load сделал: If Page.IsPostBack = False Then Dim cmb As DropDownList = DirectCast(GridView1.HeaderRow.FindControl("DropDownList1"), DropDownList) cmb.DataBind() End If но всё равно, дропдаун выставляется в изначальное положение... Алексей, подсоби, как подравитькод? Или не указывать изначально для ддл датаконнекшин, а формировать его при Page_Load? ддл должен быть в EnabledEventState=True http://vbnet.su/forum/single-165.html
RE: Давайте же начнём! (23 декабря 2008 г. / 15:58)
Смещается сам грид. Из-за того, что: Ширина грида стоит 100%. В первом поле стоит ссылка 'Edit', при которой по нажатию поле выходит в режим редактирования. Появляеются вместо 'Edit' ссылки 'Update' и 'Cancel'. Из-за этого поле расширяется, другие поля сужаются, и текст переносится. Что приводит к смещению начального положения скроллинга. Видимо, нужно жёстко привязать первый столбец по ширине. http://vbnet.su/forum/single-164.html
RE: DropDown в гриде.. Есть вопросы. (23 декабря 2008 г. / 15:57)
kibernetics пишет: 1. Как бы это лучше собрать значения всех дропдаунов для формирования условия (...WHERE Field1 = ddl1, Field2 = ddl2... и т.д.)
Сделать кнопку, по-другому никак. В Web, даже при использовании
AJAX, механизм обновления грида, при выборе значений из каждого списка, будет "дорого стоить".
kibernetics пишет: 2. Более важный вопрос. Значения может быть кое-как соберу, но вся беда в том, что при обновлении грида (после databindinga, страница перегружается) в дропдаунах нет того значения по которому я отфильтровывал грид. Как их оставить, чтоб были в том состоянии как я их выбрал?
Состояние списков должно сохраняться, если НЕ стоит
EnabledEventState=False и если списки не обновляются (данные повторно в них не загружаются) - IsPostBack.
kibernetics пишет: 3. В дропдаун данные биндятся из таблицы. Но нужно вставить также и одно поле пустое (типа, сброс по фильтру - ничего не выбрано). Это лучше программно добавить в ддл один айтем? И потом проверять, а не пустая ли строка в ддл выбрана... Или есть другой вариант?
Да, лучше добавить
самостоятельно. Пустое поле можно добавить в событие DataBinding, которое происходит после заполнения списка данными. Добавить можно через метод Insert. Собственно, если в первом вопросе будет кнопка, то такую же кнопку можно для сброса фильтров сделать. Обычно так и делается. http://vbnet.su/forum/single-163.html
DropDown в гриде.. Есть вопросы. (23
декабря 2008 г. / 14:53)
Нужно сделать в хеадере грида дропдаунлист. Чтобы при выборе значения автоматом фильтровался сам грид. Вопросы: 1. Как бы это лучше собрать значения всех дропдаунов для формирования условия (...WHERE Field1 = ddl1, Field2 = ddl2... и т.д.) 2. Более важный вопрос. Значения может быть кое-как соберу, но вся беда в том, что при обновлении грида (после databindinga, страница перегружается) в дропдаунах нет того значения по которому я отфильтровывал
грид. Как их оставить, чтоб были в том состоянии как я их выбрал? 3. В дропдаун данные биндятся из таблицы. Но нужно вставить также и одно поле пустое (типа, сброс по фильтру - ничего не выбрано). Это лучше программно добавить в ддл один айтем? И потом проверять, а не пустая ли строка в ддл выбрана... Или есть другой вариант?
Увеличен размер поля для подписи. Разрешено использовать некоторые теги HTML.
Изменены правила форума, в подписи разрешено использовать партнерские ссылки. Ссылки в подписи могут использовать только те пользователи, которые разместили обратную ссылку на VBNet.Su на одном из сайтов, указанных в профиле. Проверка обратных ссылок производится в автоматическом режиме. Если у Вас возникнут какие-либо вопросы, обращайтесь к администратору. http://vbnet.su/news/#8
Простой пример рисования линий (17 декабря 2008 г. / 11:15)
Простой пример класса для получения информации о железе (17 декабря 2008 г. / 10:58)
Простой пример класса для получения информации о железе.
Использовать можно, например, так:
Dim c As New clsComputerInfo()
MsgBox("Номер Вашей материнской платы: " & c.GetMotherBoardID)
Открылась рассылка VBNet.Su!
Рассылка будет выходить автоматически, несколько раз в неделю. В рассылке будут содержаться последние обновления сайта (аналог RSS). Чтобы подписаться на рассылку VBNet.Su, перейдите по этой ссылке. http://vbnet.su/news/#7
Новости VBNet.Su (15 декабря 2008 г. / 08:02)
Для зарегистрированных
пользователей сайта добавлена опция «Отображать фотографии», которая позволяет отображать фотографии/аватарки пользователей в сообщениях форума. http://vbnet.su/news/#6
Наследование в VB.Net (07 декабря 2008 г. / 19:37)
Если кто-нибудь уже сталкивался с мелкомягким контролом DataGridView, то наверняка порадовался обилию возможностей, которые он предлагает. Однако, когда дело доходит
до реального кодинга, начинаешь хотеть чего-то большего. Мне, к примеру, понадобилось, чтобы внутри таблицы был ComboBox – конечно, он там есть, но мне понадобилось, чтобы в нём можно было ЛИБО печатать, ЛИБО выбирать. Т.е., если в списке не оказалось нужной нам вещицы, то мы могли впечатать её и тем самым дополнить список. http://vbnet.su/articles/default/7.html
Работа с XML средствами
Visual Basic .NET (07 декабря 2008 г. / 19:28)
Использование XML.Serialization (07 декабря 2008 г. / 19:25)
В данном обзоре речь пойдет об использование XML.Serialization в .NET и ее применении на примере сохранения и считывания настроек программы
с использованием синтаксиса языка Visual Basic .NET. http://vbnet.su/articles/xml/4.html
Как сделать программку с поддержкой плагинов? (07 декабря 2008 г. / 17:57)
Автоматизация поиска SQL Injection (07 декабря 2008 г. / 17:52)
SQL Injection (SQL-вторжение) довольно распространенная уязвимость web-сайтов, которая позволяет злоумышленнику выполнять свой SQL-код путем подстановки его в ожидаемые параметры страницы. Таким образом, злоумышленник может запросто получить доступ к секретным данным, добавить, изменить, либо удалить данные.
В данной статье я расскажу и покажу на примерах языков PHP и C#, как написать программку, которая будет автоматически сканировать заданные сайты на предмет наличия в них уязвимости типа SQL Injection. Естественно, все это делается в благих целях. :) http://vbnet.su/articles/other/1.html