窗口间传值(定义公共变量)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace YXSetingSystem
{
    public partial class Form权限管理添加组 : Form
    {
        public bool IsOK = false;
        public string Title = "";

//定义公共变量pno和pname

public string pno = "";
        public string pname = "";

//public string PNO { get { return pname; } set { pname = value; } }

private void button1_Click(object sender, EventArgs e)
        {
            this.Title = this.textBox1.Text.Trim();

//给pname赋值等于this.textBox1.Text
            this.pname = this.textBox1.Text;
            this.IsOK = true;
            Form权限管理 f = new Form权限管理();

//在窗体Form权限管理中用pname值
            f.pname = this.pname;
            this.Close();
        }

}
}

将Form权限管理添加组窗体里面的值传给Form权限管理

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using YXToolSystem;
using DataSystem;

namespace YXSetingSystem
{
    public partial class FormF权限管理 : Form
    {
        public string pno = "";
        public string pname = "";

public bool IsOK = false;
        public string PGLNO = "0";

void save()
        {
            string sql = "delete from powergroup where pgtitleno=‘" + pno + "‘";

for (int i = 0; i < this.cDGV权限列表.Rows.Count; i++)
            {
                List<YXToolSystem.SQLStruct> col = new List<YXToolSystem.SQLStruct>();
                col.Add(new SQLStruct("PGTitleNO", pno));
                col.Add(new SQLStruct("PGTitleName", pname));
                col.Add(new SQLStruct("PGPBNO", this.cDGV权限列表.Rows[i].Cells["编号"].Value));
                col.Add(new SQLStruct("PGPBAdd", (this.cDGV权限列表.Rows[i].Cells["添加"].Value.ToString() == "√")));
                col.Add(new SQLStruct("PGPBAme", (this.cDGV权限列表.Rows[i].Cells["修改"].Value.ToString() == "√")));
                col.Add(new SQLStruct("PGPBDel", (this.cDGV权限列表.Rows[i].Cells["删除"].Value.ToString() == "√")));
                col.Add(new SQLStruct("PGPBSeeOne", (this.cDGV权限列表.Rows[i].Cells["查看个人"].Value.ToString() == "√")));
                col.Add(new SQLStruct("PGPBSeeDepartment", (this.cDGV权限列表.Rows[i].Cells["查看部门"].Value.ToString() == "√")));
                col.Add(new SQLStruct("PGPBSeeCompany", (this.cDGV权限列表.Rows[i].Cells["查看公司"].Value.ToString() == "√")));
                col.Add(new SQLStruct("PGPBSeeALL", (this.cDGV权限列表.Rows[i].Cells["查看全部"].Value.ToString() == "√")));
                sql += SQLGet.Add(col, "powergroup");
            }
            if (ClassData.UpDate(sql) > 0)
            {
                MessageBox.Show("设置成功!");
                this.Close();
            }
            else
            {
                MessageBox.Show("设置失败!");
            }
        }

}

}

时间: 2024-11-10 11:21:00

窗口间传值(定义公共变量)的相关文章

窗口间传值的几种方法

刚開始学Winform的同学基本上都会遇到窗口传值的问题,怎样解决问题,事实上就是须要解决你对窗口的一个理解. 一定要记住,窗口(Form),它是一个类(Class).! namespace MyForm { public partial class Form1 : Form { public Form1() { InitializeComponent(); } } } Form1,前面的修饰都是跟类相关的,比如public partial class.还有Form1的构造方法等等,都是一个类基

C# 委托 父窗口与子窗口间传值

1)目标 父窗口与子窗口都有1个Button和1个Label. 目标1:单击父窗口的Button,子窗口的Label将显示父窗口传来的值. 目标2:单击子窗口的Button,父窗口的Label将显示子窗口传来的值. 2)父窗口代码 using System; using System.Threading.Tasks; using System.Windows.Forms; namespace WindowsFormsApp5 { public delegate void ShowMessageS

如何在Exe和BPL插件中实现公共变量共享及窗口溶入技术Demo源码

1.Delphi编译方式介绍: 当我们在开发一个常规应用程序时,Delphi可以让我们用两种方式使用VCL,一种是把VCL中的申明单元及实现单元全部以静态编译的方式编译并链接进Exe可执行文件中,这样做的好处就是发布程序时只需要发布独立的可执行文件,当我们使用了的第三方DLL.OCX等时,无需发布*.bpl等文件,但EXE程序文件的体积会较大. 另外一种是把VCL库以运行时状态(即把VCL库中的申请单元静态编译进EXE可执行文件,而单元的实行方法则通过LoadLiabary/LoadPackag

C#窗体间传值方法总结

假设我们需要点击主窗体FMMain中的某一个按钮时打开子窗体FMChild并将某一个值传给子窗体FMChild,一般情况下,我们点击按钮显示子窗体FMChild的代码为: FMChild fmChild = new FMChild(); fmChild.ShowDialog(); fmChild.Dispose(); 如果我们需要将主窗体FMMain中的string strValueA的值传给FMChild,那么我们首先对strValueA进行如下处理: private string strVa

合作开发-ASP.Net页面间传值

在合作开发中,在页面串传值的时候,遇到了一些困难,在网上搜罗了一下,发现好多的传值方式,可以简单地分以下三种. 一. URL传值 原页面的值放到目标页面的URL中,然后通过QueryString方法获得该值.然而它的缺点是传递的值是会显示在浏览器的地址栏上的(不安全),同时又不能传递对象,但是在传递的值少而安全性要求不高的情况下,这个方法还是一个不错的方案.下面展示用法: 源页面WebForm1.aspx.cs中的部分代码: private void Button1_Click(object s

iOS页面间传值的方式(Delegate/NSNotification/Block/NSUserDefault/单例)

iOS页面间传值的方式(NSUserDefault/Delegate/NSNotification/Block/单例) 实现了以下iOS页面间传值:1.委托delegate方式:2.通知notification方式:3.block方式:4.UserDefault或者文件方式:5.单例模式方式:6.通过设置属性,实现页面间传值 在iOS开发中,我们经常会遇到页面间跳转传值的问题,现归纳总结一下: 情况1:A页面跳转到B页面 方法: 在B页面的控制器中,编写对应的属性,在A页面跳转到B页面的地方,给

iOS页面间传值的方式

实现了以下iOS页面间传值:1.委托delegate方式:2.通知notification方式:3.block方式:4.UserDefault或者文件方式:5.单例模式方式:6.通过设置属性,实现页面间传值 在iOS开发中,我们经常会遇到页面间跳转传值的问题,现归纳总结一下: 情况1:A页面跳转到B页面 方法: 在B页面的控制器中,编写对应的属性,在A页面跳转到B页面的地方,给B的属性赋值即可 //SecondViewController.h @property(nonatomic) NSInt

iOS页面间传值的五种方式总结(Delegate/NSNotification/Block/NSUserDefault/单例)

iOS页面间传值的方式(Delegate/NSNotification/Block/NSUserDefault/单例) iOS页面间传值的方式(NSUserDefault/Delegate/NSNotification/Block/单例) 实现了以下iOS页面间传值:1.委托delegate方式:2.通知notification方式:3.block方式:4.UserDefault或者文件方式:5.单例模式方式:6.通过设置属性,实现页面间传值 在iOS开发中,我们经常会遇到页面间跳转传值的问题,

WinForm窗体显示和窗体间传值[转载]

以前对WinForm窗体显示和窗体间传值了解不是很清楚 最近做了一些WinForm项目,把用到的相关知识整理如下 A.WinForm中窗体显示 显示窗体可以有以下2种方法: Form.ShowDialog方法 (窗体显示为模式窗体) Form.Show方法 (窗体显示为无模式窗体) 两者具体区别如下: 1.在调用Form.Show方法后,Show方法后面的代码会立即执行 2.在调用Form.ShowDialog方法后,直到关闭对话框后,才执行此方法后面的代码 3.当窗体显示为模式窗体时,单击“关