c# - 禁用 Repeater 中的按钮

标签 c# asp.net button repeater

如何访问 asp Repeater 中的特定行并禁用其中的按钮?该程序禁用所有向下按钮。我想检查 userId 是否存在于数据库中,它应该禁用向上按钮并且只应该启用向下按钮。

  public void Repeater1_ItemDatabound(Object Sender, RepeaterItemEventArgs e)
    {

        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
        {
            String userID = User.Identity.Name.Split('\\')[1]; 
             if (isOwner(userID) == true)
             {

                 Button b = e.Item.FindControl("btnmoveup") as Button;
                    b.Enabled = false;


            }

public bool isOwner(string user_ID)
    {
        using (SqlConnection connection = new SqlConnection(WebConfigurationManager.ConnectionStrings["ctd_priority_dbConnectionString"].ConnectionString))
        {
            connection.Open();
            SqlCommand cmd = new SqlCommand("Select POwner from Projects WHERE POwner = @userid", connection);
            cmd.Parameters.AddWithValue("@userid", user_ID);
            SqlDataReader reader = cmd.ExecuteReader();

            if (reader.HasRows)
            {

                return true;
            }
            else
            {
                return false;
            }
            connection.Close();
        }
    }

最佳答案

不是您问题的直接答案...

但是我用于启用、可见和其他属性的一种技术是将该值拉入您用来填充转发器的查询中。例如,您的查询/存储过程可能会返回一个名为“is_enabled”的列,该列的值是 1 或 0。然后你的按钮的 .enabled 属性可以这样设置:.enabled = '<%# eval(is_enabled) %>'

希望对你有帮助

关于c# - 禁用 Repeater 中的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11251894/

相关文章:

c# - 如何在调整大小时仅显示winforms窗口的边框?

asp.net - 面板可见=真无效

asp.net - 如何加快 Visual Studio 2010 中的编译时间

c# - 单击行为后的 wpf 按钮

包含动态图像的 HTML 按钮 - 调整大小

c# - C# 中的访问级别修饰符与程序集加载

c# - WPF DataGrid 在 IsSelected 时设置文本换行

将项目 .net 目标框架从 3.5 升级到 4.5 后日历中的 C# 错误

asp.net - 什么是类库中的dotnet5.4和net451?

ios - iOS 中用于交互元素的动态类型