【问题标题】:Multiple asp:CommandField(s) at the same cell多个 asp:CommandField(s) 在同一个单元格
【发布时间】:2016-05-29 16:47:52
【问题描述】:

我的 asp:GridView 具有编辑/删除行的选项。我希望这两个选项位于我拥有的每一行的同一个单元格中(目前这两个选项显示在不同的单元格中)。

这是我现在拥有的代码:

<asp:CommandField ShowEditButton='True' edittext='edit' canceltext='cancel' updatetext='update'></asp:CommandField>
<asp:CommandField ShowDeleteButton='True' DeleteText='delete' ></asp:CommandField>  

任何帮助将不胜感激!!!

【问题讨论】:

  • 我在其他一些答案上阅读了您的 cmets,但我仍然不确定我是否理解您为什么不能像 DaniDev 建议的那样使用 &lt;asp:TemplateField&gt;。 TemplateField 允许更多自定义,而 CommandField 只是简单地为您自动生成代码。您可以在 TemplateField 中执行您在 CommandField 中可以执行的任何操作。你只需要手动完成。

标签: asp.net gridview commandfield


【解决方案1】:

试试 asp:TemplateField

然后把你的两个选项都放在那里?我不确定这是否可行。但是你试过了吗?

【讨论】:

  • 您好,感谢您的回答。不幸的是,当我将选项放入 asp:TemplateField 时,我的 CommandFiled 出现错误:元素 'CommndField' 不是已知元素。
  • 这并没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post。 - From Review
  • @ElGavilan 这是回答的尝试,而不是(仅)要求澄清。这个答案中的问题可以看作是反问。如果您认为这是一个错误的答案或不好的答案,您可以投反对票。不要为此滥用 LQPRQ 的删除建议。
【解决方案2】:

尝试使用这样的模板列:

<asp:GridView ID="grid" runat="server" OnSelectedIndexChanged="grid_SelectedIndexChanged">
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:Button id="btnEdit" runat="server" />
                <asp:Button id="btnDelete" runat="server" />
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

然后你必须为你的grid_SelectedIndexChanged添加代码

protected void grid_SelectedIndexChanged(object sender, EventArgs e)
{

}

【讨论】:

  • 我不想使用这种方法,因为我当前的代码让我可以选择在 gridview 本身内编辑列的数据。
  • 明白。不幸的是,这是使用预打包的 ASP.net 控件必须付出的代价。除非您使用自己的自定义代码,否则我认为您无法将它们放在一列中。贝哈兹拉查!
猜你喜欢
  • 1970-01-01
  • 2015-10-09
  • 2012-08-25
  • 1970-01-01
  • 2021-10-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-17
相关资源
最近更新 更多