zoukankan      html  css  js  c++  java
  • 20150812 Asp.net 父窗体获取子窗体的返回值,更新父窗体文本控件(应用)

    1. 父窗体

    ****************************************

    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;

    using System.Text;
    //using System.Text.StringBuilder;

    public partial class Tree1 : System.Web.UI.Page
    {

        protected System.Data.SqlClient.SqlConnection SqlConnection1;
        protected System.Data.SqlClient.SqlDataAdapter SqlDataAdapter1;
        protected System.Data.DataSet DataSet1;
        protected System.Data.DataSet DataSet2;
        string Str_sql = "";
        static string Str_selected = "";  // 选中的值
       
       
        protected void Page_Load(object sender, EventArgs e)
        {
            AddTree(0, null);
        }

        private void AddTree(int Pid, TreeNode PNode)
        {
            //string sqlStr = "SELECT Item_id,Item_name,Parent_ID FROM Para_item";
            //DataTable dt = YSqlHelper.ExecuteQuery(sqlStr, CommandType.Text);

            if (!IsPostBack)
            {

                P_ht.H_data P_data = new P_ht.H_data();
                P_data.sql_text1 = "SELECT Item_id,Item_name,Parent_ID FROM Para_item";
                Str_sql = P_data.sql_text1;
                P_data.select_tables();
                DataSet1 = P_data.DataSet8;
                DataTable dt = DataSet1.Tables[0];

                if (dt.Rows.Count > 0)
                {
                    DataView dv = new DataView(dt);
                    //过滤ParentID,得到当前的所有子节点 ParentID为父节点ID
                    dv.RowFilter = "[Parent_ID] = " + Pid;
                    //循环递归
                    foreach (DataRowView Row in dv)
                    {
                        //声明节点
                        TreeNode Node = new TreeNode();
                        //绑定超级链接
                        // Node.NavigateUrl = String.Format("javascript:show('{0}')", Row["Item_Name"].ToString());
                        //开始递归
                        if (PNode == null)
                        {
                            //添加根节点
                            Node.Text = Row["Item_Name"].ToString();
                            this.TreeView1.Nodes.Add(Node);
                            Node.Expanded = true; //节点状态展开
                            AddTree(Int32.Parse(Row["Item_ID"].ToString()), Node);    //再次递归
                        }
                        else
                        {
                            //添加当前节点的子节点
                            Node.Text = Row["Item_Name"].ToString();
                            PNode.ChildNodes.Add(Node);
                            Node.Expanded = true; //节点状态展开
                            AddTree(Int32.Parse(Row["Item_ID"].ToString()), Node);     //再次递归
                        }
                    }
                }
            }
        }


        ////
        // 选中节点
        protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
        {
            //this.Label1.Text = TreeView1.SelectedNode.Value.ToString().Trim();
            //this.Label1.Text = TreeView1.SelectedNode.Text.ToString().Trim();
            //Response.Write(TreeView1.SelectedNode.Value.ToString().Trim());
            Str_selected = TreeView1.SelectedNode.Value.ToString().Trim();
            Response.Write(Str_selected);
        }

        // add
        protected void Btn_node_add_Click(object sender, EventArgs e)
        {
           
            P_ht.H_data P_data = new P_ht.H_data();
            if (Str_selected.Trim() == "")
            {
                ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
                scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: 选中的节点为空,您要重新点击节点才能选中节点! ');", true);
                return;
            }
            else
            {
                string str_Parent_ID = "0";
                Int32 i_Item_id = 0;

                //select
                P_data.sql_text1 = " SELECT Item_id,Item_name,Parent_ID FROM Para_item where Item_name = '" + Str_selected.Trim().ToString() +"' ";
                Str_sql = P_data.sql_text1;
                P_data.select_tables();
                DataSet1 = P_data.DataSet8;
                if (DataSet1.Tables[0].Rows.Count > 0)
                {
                    str_Parent_ID = DataSet1.Tables[0].Rows[0][0].ToString().Trim();

                    P_data.sql_text1 = " SELECT Item_id,Item_name,Parent_ID FROM Para_item order by Item_id desc ";
                    Str_sql = P_data.sql_text1;
                    P_data.select_tables();
                    DataSet1 = P_data.DataSet8;

                    i_Item_id =  System.Convert.ToInt32(DataSet1.Tables[0].Rows[0][0].ToString().Trim())+1;
                }
                else
                {
                    ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
                    scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: 没有找到节点编号, 不能增加节点! ');", true);
                    return;
                }

                //add
                P_data.p11_count = "4";  //总数量+1

                P_data.p11_ID = i_Item_id.ToString().Trim(); //编号
                P_data.p11_01 = "月当楼";
                P_data.p11_02 = str_Parent_ID;

                P_data.p21_ID = "t3_01";
                P_data.p21_01 = "t3_02";
                P_data.p21_02 = "t3_03";

                P_data.sql_text1 = "INSERT INTO Para_item (Item_id,Item_name,Parent_ID) VALUES "
                                                   + "(@t3_01, @t3_02, @t3_03)";

                P_data.write_tables();
            }

            ////reshfer;

            //TreeNode nodeNew = new TreeNode("月当楼");// 新建节点对象

            //if (TreeView1.SelectedNode == null)
            //{
            //    return;
            //}
            //else
            //{
            //    TreeView1.SelectedNode.ChildNodes.Add(nodeNew);
            //}

            Server.Transfer("Tree1.aspx");

        }

        protected void Btn_node_edit_Click(object sender, EventArgs e)
        {
            P_ht.H_data P_data = new P_ht.H_data();
            if (Str_selected.Trim() == "")
            {
                ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
                scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: 选中的节点为空,您要重新点击节点才能选中节点! ');", true);
                return;
            }
            else
            {
               
                //select

                string str_Parent_ID = "";

                P_data.sql_text1 = " SELECT Item_id,Item_name,Parent_ID FROM Para_item where Item_name = '" + Str_selected.Trim().ToString() + "' ";
                Str_sql = P_data.sql_text1;
                P_data.select_tables();
                DataSet1 = P_data.DataSet8;
                if (DataSet1.Tables[0].Rows.Count > 0)
                {
                    str_Parent_ID = DataSet1.Tables[0].Rows[0][0].ToString().Trim();
                    Session["Tree1_Edit_name"] = str_Parent_ID;
                }
                else
                {
                    ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
                    scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: 没有找到节点编号, 不能删除节点! ');", true);
                    return;
                }

                //原窗口保留,以对话框形式打开新窗口:
                //Response.Write("<script>window.showModelessDialog('Tree1_edit.aspx')</script>");
                //return;

                //
                StringBuilder s = new StringBuilder();
                s.Append(" <script language=javascript> var a=window.showModalDialog('Tree1_edit.aspx'); ");
                s.Append(" if(a!=null) document.all('TextBox1').value=a;</script> ");
                 Type cstype = this.GetType();

                ClientScriptManager cs = Page.ClientScript;
                string sname = "lt";
                if (!cs.IsStartupScriptRegistered(cstype, sname))
                cs.RegisterStartupScript(cstype, sname, s.ToString());
                return;
               
                //
                P_data.sql_text1 = "update Para_item set Item_name = '户部巷' "
                                                      + " where Item_id =  " + str_Parent_ID.Trim().ToString() + " ";

                P_data.update_tables();
            }

            ////reshfer;

            //if (TreeView1.SelectedNode == null)
            //{
            //    return;
            //}
            //else
            //{
            //    TreeView1.SelectedNode.Value = "户部巷";
            //    TreeView1.SelectedNode.Text = "户部巷";
            //}

            Server.Transfer("Tree1.aspx");
        }

        // delete
        protected void Btn_node_delete_Click(object sender, EventArgs e)
        {
            P_ht.H_data P_data = new P_ht.H_data();
            if (Str_selected.Trim() == "")
            {
                ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
                scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: 选中的节点为空,您要重新点击节点才能选中节点! ');", true);
                return;
            }
            else
            {
                //select

                string str_num_ID = "";
                string str_Parent_ID = "";

                P_data.sql_text1 = " SELECT Item_id,Item_name,Parent_ID FROM Para_item where Item_name = '" + Str_selected.Trim().ToString() + "' ";
                Str_sql = P_data.sql_text1;
                P_data.select_tables();
                DataSet1 = P_data.DataSet8;
                if (DataSet1.Tables[0].Rows.Count > 0)
                {
                    str_num_ID = DataSet1.Tables[0].Rows[0][0].ToString().Trim();
                    str_Parent_ID = DataSet1.Tables[0].Rows[0][2].ToString().Trim();
                }
                else
                {
                    ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
                    scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: 没有找到节点编号, 不能删除节点! ');", true);
                    return;
                }

                // 如果有子节点提示先删除子节点,否则不予删除。( 另一种方法是写代码,用递归的方法找到所有的子节点,批量性删除 )
                P_data.sql_text1 = " SELECT Item_id,Item_name,Parent_ID FROM Para_item where Parent_ID = '" + str_num_ID.Trim().ToString() + "' ";
                Str_sql = P_data.sql_text1;
                P_data.select_tables();
                DataSet1 = P_data.DataSet8;
                if (DataSet1.Tables[0].Rows.Count > 0)
                {
                    ClientScriptManager scriptManager = ((Page)System.Web.HttpContext.Current.Handler).ClientScript;
                    scriptManager.RegisterStartupScript(typeof(string), "", "alert('提示: 不能删除, 先删除所有子节点后才都能删除父节点! ');", true);
                    return;
                }
                else
                {
                    P_data.sql_text1 = " delete from Para_item where Item_id = " + str_num_ID.Trim().ToString() + " ";
                    P_data.update_tables();
                }
            }

            //reshfer;
            Server.Transfer("Tree1.aspx");

        }


    }

    ****************************************

    2. 子窗体

    ****************************************

    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;

    using System.Text;
    //using System.Text.StringBuilder;

    public partial class Tree1_edit : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (Session["Tree1_Edit_name"] != null)
                {
                    this.TextBox1.Text = Session["Tree1_Edit_name"].ToString();
                }
                else
                {
                    this.TextBox1.Text = "";
                }
            }
        }

        protected void Btn_confirm_Click(object sender, EventArgs e)
        {
            //Response.Write("<script>window.close();</script>");// 会弹出询问是否关闭
            //Response.Write("<script>window.opener=null;window.close();</script>");// 不会弹出询问

            // 不会弹出询问
            //ClientScript.RegisterStartupScript(Page.GetType(), "", "<script language=javascript>window.opener=null;window.open('','_self');window.close();</script>");

            //Response.Write("<script>window.returnValue=1;window.close();</script>");

            //
            StringBuilder s = new StringBuilder();
            s.Append("<script language=javascript>" + " window.returnValue='" + this.TextBox1.Text.Trim().ToString() + "';" + " window.close();" + " </script>");
            Type cstype = this.GetType();
            ClientScriptManager cs = Page.ClientScript;
            string csname = "ltype";
            if (!cs.IsStartupScriptRegistered(cstype, csname))
                cs.RegisterStartupScript(cstype, csname, s.ToString());

            //Response.Write("<script language=javascript>opener.location.href=opener.location.href;</script>");

        }


    }

    ****************************************

  • 相关阅读:
    Firemonkey 控件设定字型属性及颜色
    ListView 使用 LiveBindings 显示超过 200 条记录
    Firemonkey ListView 获取项目右方「>」(Accessory) 事件
    XE7 Update 1 选 iOS 8.1 SDK 发布 iPhone 3GS 实机测试
    Firemonkey Bitmap 设定像素颜色 Pixel
    Firemonkey 移动平台 Form 显示使用 ShowModal 范例
    XE7 提交 App(iOS 8)提示「does not contain the correct beta entitlement」问题修复
    XE7 Android 中使用 MessageDlg 范例
    导出 XE6 预设 Android Style (*.style) 档案
    修正 Memo 設定為 ReadOnly 後, 無法有複製的功能
  • 原文地址:https://www.cnblogs.com/hutie1980/p/4725607.html
Copyright © 2011-2022 走看看