zoukankan      html  css  js  c++  java
  • GridView中实现DropDownList联动

    直接上代码,不做过多解释:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Data;

    public partial class _Default : System.Web.UI.Page
    {
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
    //如果是数据绑定行
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
    DropDownList ddlParent
    = (DropDownList)e.Row.FindControl("ddlParent");
    GetParent(ddlParent);
    }
    }


    private void GetParent(DropDownList ddl)
    {
    string sql = "select * from Models where ParentModuleID=0";
    DataTable dt
    = DB.CreateDT(sql);
    ddl.DataTextField
    = "ModuleName";
    ddl.DataValueField
    = "ID";
    ddl.DataSource
    = dt;
    ddl.DataBind();
    }
    protected void ddlParent_SelectedIndexChanged(object sender, EventArgs e)
    {
    GridViewRow row
    = (GridViewRow)((sender) as Control).NamingContainer;
    DropDownList ddlParent
    = (sender) as DropDownList;

    int ddlParentID=Convert.ToInt32(ddlParent.SelectedValue);

    DropDownList ddlChildren
    = row.FindControl("ddlChildren") as DropDownList;
    GetChildren(ddlChildren,ddlParentID);

    }

    private void GetChildren(DropDownList ddl, int parentID)
    {
    string sql = "select * from Models where ParentModuleID=" + parentID + "";
    DataTable dt
    = DB.CreateDT(sql);
    ddl.DataTextField
    = "ModuleName";
    ddl.DataValueField
    = "ID";
    ddl.DataSource
    = dt;
    ddl.DataBind();
    }
    }

    需要注意的是,其中的NamingContaier的使用方式.

  • 相关阅读:
    .NET技术对软件行业的积极作用
    ADO.NET Entityframework MYSQL provider
    用杯子量水问题通用解法
    详解.NET异步
    说 框架、架构、模式、重构
    谈 三层结构与MVC模式的区别
    面试题一例分享
    LINQ notes2 lambda expression
    毕业论文B.3 DTW算法
    LINQ notes1 intro
  • 原文地址:https://www.cnblogs.com/scy251147/p/1922320.html
Copyright © 2011-2022 走看看