c# - CodeBehind 中的 GridView 选择行和回发

标签 c# asp.net gridview postback

我必须在 C# CodeBehind 中 100% 创建一个 GridView。我让它选择一行并使用此代码发回:

    void dataGrid_ItemCreated(object sender, DataGridItemEventArgs e)
    {
        if (e.Item.ItemType == ListItemType.AlternatingItem ||
            e.Item.ItemType == ListItemType.Item)
        {
            e.Item.Attributes.Add("onmouseover",
                   "this.style.backgroundColor='beige';this.style.cursor='pointer'");
            e.Item.Attributes.Add("onmouseout",
                   "this.style.backgroundColor='#FFFFFF';");
            e.Item.Attributes.Add("onclick", "javascript:__doPostBack" +
                   "('_ctl0$DataGrid1$_ctl" +
                   ((Convert.ToInt32(e.Item.ItemIndex.ToString())) + 2) +
                   "$_ctl0','')");
        }
    }

这确实会回发,但我如何获取用户点击的行的 ID?

最佳答案

void dataGrid_ItemCreated(object sender, DataGridItemEventArgs e)
    {
        if(e.Item.ItemType == ListItemType.Item)
        {
            var item = e.Item.DataItem;  // <- entity object that's bound, like person
            var itemIndex = e.Item.ItemIndex; // <- index
        }

    }

关于c# - CodeBehind 中的 GridView 选择行和回发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5225418/

相关文章:

尽管将水平/垂直对齐设置为拉伸(stretch),Xaml 网格仍不填充父级

php - 在 gridview PHP 中显示

c# - Mono Process.Start 返回 ExitCode 255?

c# - 如何从 DataGridView 构建 DataTable?

c# - 如何在 ListView 中显示类中的嵌套列表

c# - Gridview自定义控件和javascript函数c#

C# 生成的代理方法与原始 Java 服务方法不同

c# - Object.GetType 也可以用于后期绑定(bind)吗?

c# - 简单的正则表达式替换以保留原始字符串

javascript - 如何在 asp.net 中从 c# 运行 javascript