powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Гиперссылка в grid
9 сообщений из 9, страница 1 из 1
Гиперссылка в grid
    #38686320
TaReN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть грид в котором отображаются какието данные, в однои из колонок в некоторых ячейках нужно сделать гиперссылку или кнопку по которой бы выполнялись какието действия (добавление\изменение данных), при чем в разных ячейках могут выполнятся разные действия, определить какие действия необходимы можно допустим по содержимому ячейки или по какому либо другому признаку в данных извлеченных из DataSource к которому привязан Grud.
как это сделать?
заранее благодарен
...
Рейтинг: 0 / 0
Гиперссылка в grid
    #38686581
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaReN,

LinkButton, в которой задается CommandName и CommandArgument, соответственно у грида задается OnRowCommand, где и обрабатывается нажатие ..

LinkButton
...
Рейтинг: 0 / 0
Гиперссылка в grid
    #38687356
TaReN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, но....
авторОшибка при создании элемента управления - GridView1В 'System.Web.UI.WebControls.DataControlFieldCollection' должны содержаться элементы типа 'System.Web.UI.WebControls.DataControlField'. 'asp:LinkButton' имеет тип 'System.Web.UI.WebControls.LinkButton'.
возможно я дико туплю, но в грид колонка такого типа не хочет запихиваться
...
Рейтинг: 0 / 0
Гиперссылка в grid
    #38687823
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaReNСпасибо, но....
авторОшибка при создании элемента управления - GridView1В 'System.Web.UI.WebControls.DataControlFieldCollection' должны содержаться элементы типа 'System.Web.UI.WebControls.DataControlField'. 'asp:LinkButton' имеет тип 'System.Web.UI.WebControls.LinkButton'.
возможно я дико туплю, но в грид колонка такого типа не хочет запихиваться

..ее запихивают не в BoundField, а в TemplateField
...
Рейтинг: 0 / 0
Гиперссылка в grid
    #38687838
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Гиперссылка в grid
    #38688212
TaReN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
carrotik,

спасибо, вроде то что надо, одно но в выборке источника данных присутствуют идентификаторы, они пользователю не нужны и я их естественно в гриде скрываю, так вот из скрытых колонок не получается вытянуть данные в аргумент хоть LinkButton хоть в аргумент самого источника данных, значения в этих колонках получаются нулевые, как это можно побороть?
...
Рейтинг: 0 / 0
Гиперссылка в grid
    #38688256
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaReNcarrotik,

спасибо, вроде то что надо, одно но в выборке источника данных присутствуют идентификаторы, они пользователю не нужны и я их естественно в гриде скрываю, так вот из скрытых колонок не получается вытянуть данные в аргумент хоть LinkButton хоть в аргумент самого источника данных, значения в этих колонках получаются нулевые, как это можно побороть?

... например, у меня подобная схема так работает - скрытый идентификатор тоже в TemplateField в виде Label
Код: html
1.
2.
3.
4.
5.
6.
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblFile" Visible="False" Width="0%" Text='<%# DataBinder.Eval(Container.DataItem,"sfile") %>'
runat="server" />
</ItemTemplate>
</asp:TemplateField>



.. а вытягивается через
Код: vbnet
1.
2.
3.
Dim index As Integer = Convert.ToInt32(e.CommandArgument)
Dim row As GridViewRow = myGridView.Rows(index)
Dim sFileText As Label = CType(row.FindControl("lblFile"), Label)


..ну, на C# аналогично ...
...
Рейтинг: 0 / 0
Гиперссылка в grid
    #38688347
TaReN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
carrotik,

Конечно какаята корявость присутствует в том что через левые переменные приходится доставать значение всеголишь в гриде скрытых колонок, но всеже работает))
Код: c#
1.
2.
3.
GridViewRow grdrow = (GridViewRow)((LinkButton)sender).NamingContainer;
            string idg =  ((Label)grdrow.FindControl("lblidg")).Text;
            string idv = ((Label)grdrow.FindControl("lblidv")).Text;


Спасибо огромное
...
Рейтинг: 0 / 0
Гиперссылка в grid
    #38688774
Березовский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В гриде есть DataKeyNames, вот там и берите значения. Никакие скрытые поля не нужны
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Гиперссылка в grid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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