2014-01-03 4 views
1

На моей странице есть 2 linkbutton для загрузки pdf-документа, что я пытаюсь реализовать, если версии 0, то linkbutton должен быть скрыт от пользователя. Конверсии поступают из базы данных. Как я могу реализовать это gridview asp.net в C#.Изменить видимость linkbutton в gridiew

<wuc:CustomTemplateField ID="CustomTemplateField3" IsRenderedOnReadOnly="True"> 
    <ItemTemplate> 
    <asp:LinkButton ID="lnk8850" runat="server" Text="8850" CausesValidation="False" CommandName="Print8850" CommandArgument='<%#Eval("CaseNumber") %>' /> 
    </ItemTemplate> 
</wuc:CustomTemplateField> 

<wuc:CustomTemplateField ID="CustomTemplateField2" IsRenderedOnReadOnly="True"> 
    <ItemTemplate> 
    <asp:LinkButton ID="lnk9061" runat="server" Text="9061" CausesValidation="False" CommandName="Print9061" CommandArgument='<%#Eval("CaseNumber") %>' /> 
    </ItemTemplate> 
</wuc:CustomTemplateField> 

Пожалуйста, помогите мне.

+0

Что вы имеете в виду, если версии 0? Какое значение/поле указывает версию? Поле в запросе, которое вы связываете с этим gridview? – MTAdmin

ответ

-1

Я бы сделал класс css с отображением: hidden. Если ваши условия выполнены, дайте linkbutton этот класс с свойством cssclass. Вы должны быть в состоянии сделать это так же, как вы оцениваете casenumber в аргументе команды.

+0

Я ищу, где проверить, нет ли visiblr или нет. – user2217726

+3

Использование '.Visible = false' будет пропускать рендеринг элемента управления вообще, с * сервера * означает более чистый выход. Пока 'display: none' спрячет это элемент управления от пользователя, контент все равно отправит браузер. В некоторых случаях это также может представлять угрозу безопасности. – Nate

3

Если Версия столбца является значения Integer (0, 1, 2, ...), вы можете просто использовать

Visible='<%# Convert.ToInt32(Eval("Versions")) != 0 %>' 

Если Версии столбца является значения Boolean (истина или ложь), вы можете использовать

Visible='<%# Convert.ToBoolean(Eval("Versions")) %>' 

Например,

<asp:LinkButton ID="lnk8850" 
    runat="server" 
    Text="8850" 
    CausesValidation="False" 
    CommandName="Print8850" 
    CommandArgument='<%#Eval("CaseNumber") %>' 
    Visible='<%# Convert.ToInt32(Eval("Versions")) != 0 %>' /> 
Смежные вопросы