【问题标题】:Is there a way to turn a Button in GridView to a link text?有没有办法将 GridView 中的 Button 转换为链接文本?
【发布时间】:2016-07-05 08:34:29
【问题描述】:

按钮的大小确实会影响我的 GridView 的宽度,因此我希望将按钮更改为链接(例如,如果您要使用 AutoGenerateEditButton 或 AutoGenerateDeleteButton)。这是我所拥有的:

<asp:TemplateField>
    <ItemTemplate>
        <asp:Button ID="editButton" runat="server" CommandName="Edit" 
            Text="Edit"  />
    </ItemTemplate>
    <EditItemTemplate>
        <asp:Button ID="BtnUpdate" runat="server" CommandName="Update" 
            Text="Edit" />
        <asp:Button ID="BtnCancel" runat="server" CommandName="Cancel" 
            Text="Cancel" />
    </EditItemTemplate>
</asp:TemplateField>

如何将我拥有的内容更改为类似于链接的文本(再一次,就像它来自 AutoGenerateEditButton)。我无法将其设置为 true,因为我需要有条件地隐藏它,如果它是自动生成的,我似乎无法做到。如果您知道在自动生成时有条件地隐藏它的方法,请告诉我!

请注意,我使用的是 SQLDataSource。

【问题讨论】:

    标签: c# asp.net gridview webforms


    【解决方案1】:

    使用LinkButtonMSDN

    <asp:TemplateField>
        <ItemTemplate>
            <asp:LinkButton ID="editButton" runat="server" CommandName="Edit">Edit</asp:LinkButton>
        </ItemTemplate>
        <EditItemTemplate>
            <div style="white-space: nowrap;">
                <asp:LinkButton ID="BtnUpdate" runat="server" CommandName="Update">Edit</asp:LinkButton>
                <asp:LinkButton ID="BtnCancel" runat="server" CommandName="Cancel">Cancel</asp:LinkButton>
            </div>
        </EditItemTemplate>
    </asp:TemplateField>
    

    【讨论】:

    • 谢谢,这正是我所需要的。有没有办法让它们在列中相互内联?单击“编辑”后,“编辑”位于“取消”之上,反之亦然。
    • 您可以将其包装在一个 div 中并执行 white-space: nowrap; 并查看是否可以。我调整了答案。如果这不起作用,您可以手动设置宽度以适应它们。
    • 现在我知道LinkButton 的存在。谢谢!标记为最佳。
    猜你喜欢
    • 2017-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 2012-03-09
    • 1970-01-01
    • 1970-01-01
    • 2018-02-16
    相关资源
    最近更新 更多