C#编辑Gridview中的命令名称

时间:2014-07-07 13:03:30

标签: c# gridview

在我的 gridView 中,我为每一行插入了编辑命令名称

现在我需要 myDate的数据库值不为空停止此行中的编辑。

我尝试过这个解决方案,但是当 myDate的数据库值不为空时, GV 会看到图标 stop.gif ,但是点击 stop.gif 编辑行打开,为什么?

你能帮帮我吗? 提前谢谢。

<asp:TemplateField HeaderText="Edit">
    <ItemTemplate>
        <center>
            <asp:ImageButton ID="imgbtnEdit" CommandName="Edit" runat="server" 
                 ImageUrl='<%#(String.IsNullOrEmpty(Eval("myDate").ToString()) ? "/Images/edit.gif" : "/Images/stop.gif")%>'
                 ToolTip="Edit" /></center>
    </ItemTemplate>
    <EditItemTemplate>
        <center>
            <asp:ImageButton ID="imgbtnUpdate" CommandName="Update" runat="server" ImageUrl="/Images/update.gif"
                ToolTip="Update" />
            <asp:ImageButton ID="imgbtnCancel" runat="server" CommandName="Cancel" ImageUrl="/Images/cancel.gif"
                ToolTip="Cancel" />
    </EditItemTemplate>
</asp:TemplateField>

1 个答案:

答案 0 :(得分:0)

如果您只是将图片网址设为空白,则并不意味着您没有渲染控件。该按钮仍将呈现。你可以做的就是下面的

<asp:ImageButton ID="imgbtnEdit" CommandName="Edit" runat="server" 
     ImageUrl='/Images/stop.gif'
     Visbile =  '<%#Eval("myDate").HasValue %>'    
     ToolTip="Edit" />