ASP.NET: Gridview Отображение кнопки в строке, когда ячейка строки vlaue = false в строке Bound из базы данных - PullRequest
1 голос
/ 17 ноября 2009

У меня есть GridView, связанный с источником данных, мне было интересно, как я могу проверить значение ячейки строки (bool) из привязываемой строки базы данных, а затем показать кнопку в строках, где значение ячейки равно false. .

Я использую событие OndataBound для получения привязки строки Gridview, я беру ID show, запускаю другую процедуру для базы данных, чтобы найти значение ячейки в соответствующей строке Database. но я не могу понять, как добавить кнопку ..

также есть ли другие способы справиться с этим сценарием?

1 Ответ

1 голос
/ 17 ноября 2009

Решение 1 : Создайте кнопку с идентификатором, где вы хотите ее видеть в виде таблицы, с атрибутом visible = false. Всякий раз, когда вы хотите показать кнопку, извлеките ее (currentGridRow.FindControl("chosen button ID")) и установите для атрибута visible значение true.

поместите свою кнопку в поле шаблона, например:

 <asp:TemplateField HeaderText="foobar" >
    <ItemTemplate>
    <asp:ImageButton ID="plusbutton" CssClass="cplusButton" ToolTip="plusButton" OnClick="buttonAdd_Click" runat="server" Visible = "false"/>
    </ItemTemplate>
</asp:TemplateField>

Решение 2 : динамически создать кнопку (Button b = new Button; currentGridRow.Cell[].Controls.Add(b);), но иметь дело с состоянием просмотра и обработчиком событий очень сложно Не иди этим путем.

...