如果注释是由用户登录后如何显示删除按钮?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果注释是由用户登录后如何显示删除按钮?相关的知识,希望对你有一定的参考价值。

我有一个ListView,显示用户对特定新闻文章的所有评论。

我想让创建评论的用户也能够将其删除,因此在他发表的评论附近,他应该只能看到删除按钮。

考虑到不允许在服务器标签中使用<%= ... %>设置visible属性,应该怎么做呢?

我想过迭代所有ListView项目并在必要时添加按钮,但我认为这太麻烦了,而且还有更好的方法。

谢谢!

答案

尝试在ListView ItemDataBound事件上实现可见性逻辑。

标记:

<asp:ListView ID="lv" OnItemDataBound="ItemDataBound" />

代码背后:

protected void ItemDataBound(object sender, ListViewItemEventArgs e)
{
    if (e.Item.ItemType == ListViewItemType.DataItem)
    {
        var deleteButton = (Button)e.Item.FindControl("DeleteButtonID");

        YourDataSource yourDataSource = e.Item.DataItem as YourDataSource;
        deleteButton.Visible = yourDataSource.CanDelete;
    }
}

以上是关于如果注释是由用户登录后如何显示删除按钮?的主要内容,如果未能解决你的问题,请参考以下文章

按下视图控制器后删除“返回”按钮

隐藏/显示片段中的导航元素

302 登录重定向后被 IE 删除的 URL 片段

登录后如何从导航栏中删除登录按钮

如何从一个片段中删除数据,这些片段应该反映在google firebase中的其他片段中

如何通过单击适配器类中代码的项目中的删除按钮来删除列表视图中的项目后重新加载片段?