c# - asp.net 中的 GridView 不接受点击

标签 c# asp.net visual-studio-2010

我有一个问题,这些简单的基础知识之一,但就是不知道它的行为。我在使用 VS 2010 的 asp.net 页面上显示了一个简单的 GridView。页面加载正常,我可以看到 Grid,但是当我尝试单击它时,没有任何反应。这就像点击一个空白区域。只是尝试将任何行数据发送到 TextBox。

仅供引用:

1) GridView 正在从 DataAdapter 及其自己的 DataSet 中填充。

2) OnSelectedIndexChanged 事件已设置。

3) 每个字段都绑定(bind)到数据库中的特定字段。

GridView 代码:

<asp:GridView runat="server" Width="300px" Height="100px" ID="mstPx_grdCtrl" 
        AutoGenerateColumns="False" onselectedindexchanged="mstPx_grdCtrl_SelectedIndexChanged" >
    <Columns>
        <asp:BoundField DataField="codPx" HeaderText="Código" />
        <asp:BoundField DataField="nombre" HeaderText="NOMBRE" />
        <asp:BoundField DataField="apellido" HeaderText="APELLIDO" />
    </Columns>
</asp:GridView>

C# 代码隐藏:您可以看到我尝试过的两个选项...

protected void mstPx_grdCtrl_SelectedIndexChanged(object sender, EventArgs e)
{
    txtId.Text = mstPx_grdCtrl.SelectedRow.Cells[0].Text;
    txtId.Text = mstPx_grdCtrl.Rows[mstPx_grdCtrl.SelectedIndex].Cells[1].Text;
}

最佳答案

你需要在aspx文件中添加这个属性

AutoGenerateSelectButton="True"

看这里:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.onselectedindexchanged.aspx

或者你可以使用一个

<asp:ButtonField DataTextField="code" />

然后为那个字段定义 onclick 函数来做你想做的事

关于c# - asp.net 中的 GridView 不接受点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18987542/

相关文章:

c# - 使用c#在IIS中创建虚拟目录

mysql - 我如何修复 "Specified key was too long; max key length is 1000 bytes"

c# - 如何使用 C# 或编码 UI 获取图像控制颜色?

c# - javascript隐藏多个gridview行

c++ - VS C++ 2010 Express 问题(IDE/头文件 HELL?)

连接调试器时 ASP.Net Worker 进程卡住

c# - 用于拆分大写字符字符串的自定义函数无法按预期工作

c# - 我应该如何在 wpf 和 C# 中绘制文本和形状?

c# - Facebook 登录抛出“应用程序配置不允许给定的 URL。: One or more of the given URLs is not allowed

python - 如何让 boost.python 教程与 Visual Studio 2010 和 python 3.4 一起工作?