dataTable绑定GridView,后台代码怎么生成带有超链的列。(若是通过前台代码实现 希望能给个详尽的代码)
dataTable绑定GridView,后台代码如何生成带有超链的列。(若是通过前台代码实现 希望能给个详尽的代码)
现阶段代码如下,AutoGenerateSelectButton属性设置成"True"以后就可以在SelectedIndexChanged事件中取到相应键值,但是现在我想以AutoGenerateSelectButton方式去实现,我想以我的“名字”列为超链接,同时点击的时候仍然可以在后台取到键值。但是不知道在后台如何生成带有超链接的列,同时前台代码应该怎么设置也不清楚。
asp.net初学者,还望高手指点。。 若是通过前台代码实现 希望能给个详尽的代码
现阶段代码如下
前台代码
------解决方案--------------------
去看看RowDataBound事件吧
------解决方案--------------------
HyperLinkField
------解决方案--------------------
前台代码,绑定字段 name
现阶段代码如下,AutoGenerateSelectButton属性设置成"True"以后就可以在SelectedIndexChanged事件中取到相应键值,但是现在我想以AutoGenerateSelectButton方式去实现,我想以我的“名字”列为超链接,同时点击的时候仍然可以在后台取到键值。但是不知道在后台如何生成带有超链接的列,同时前台代码应该怎么设置也不清楚。
asp.net初学者,还望高手指点。。 若是通过前台代码实现 希望能给个详尽的代码
现阶段代码如下
- C# code
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { DataTable dt = new DataTable("Table_Order"); dt.Columns.Add("GUID", System.Type.GetType("System.Guid")); dt.Columns.Add("名字", System.Type.GetType("System.String")); DataRow dr = dt.NewRow(); dr["GUID"] = guid1; dr["名字"] = "小明"; DataRow dr = dt.NewRow(); dr["GUID"] = guid2; dr["名字"] = "小红"; DataView dv = new DataView(dt); dynamicGenerateColumns(GridView1, dt);//动态生成列 GridView1.DataSource = dv; GridView1.DataKeyNames = new string[] { "GUID"};//设置键 gv_OrderInfo.DataBind(); } } // 动态生成GridView的Columns public static GridView dynamicGenerateColumns(GridView gv, DataTable dt) { // 把GridView的自动产生列设置为false,否则会出现重复列 gv.AutoGenerateColumns = false; // 清空所有的Columns gv.Columns.Clear(); // 遍历DataTable 的每个Columns,然后添加到GridView中去 foreach (DataColumn item in dt.Columns) { BoundField col = new BoundField(); col.HeaderText = item.ColumnName; col.DataField = item.ColumnName; col.Visible = true; gv.Columns.Add(col); } return gv; } protected void gv_OrderInfo_SelectedIndexChanged(object sender, EventArgs e)//点击界面中的超链接之后,可以取到相应的键值(GUID) { Label1.Text = GridView1.SelectedDataKey["GUID"].ToString(); }
前台代码
- HTML code
<asp:GridView ID="GridView1" runat="server" OnRowDataBound="GridView1_RowDataBound" AutoGenerateSelectButton="True" OnSelectedIndexChanged="GridView1_SelectedIndexChanged"> </asp:GridView>
------解决方案--------------------
去看看RowDataBound事件吧
------解决方案--------------------
HyperLinkField
------解决方案--------------------
前台代码,绑定字段 name
- HTML code
<asp:TemplateField HeaderText="name" > <ItemTemplate> <asp:LinkButton ID="nmae" runat="server" Text='<%# Eval("name")%>' CommandName="Edit" ></asp:LinkButton><br /> </ItemTemplate> </asp:TemplateField>
------解决方案--------------------
------解决方案--------------------