C#窗体怎么作为类的子类

就是,我几个窗体,还有一个类,类里面有一个集合和属性,在其中一个窗体中实例化这个类以后,向这个类的集合和属性添加数据,然后我再在另一个窗体中调用这个类里面的集合和属性,发现并没有改变,这个怎么办?我后来想让这个类作为父类来使用,但是窗体要怎么实现作为类的子类,希望大家帮帮忙,或者大家还有其他的方法

c#

1个回答

窗体不能作为类的子类,因窗体从Form继承,根据C#的语法,不能再继承另一个类,C#不支持多重继承。代替的方法是使用类的聚合,也就是在你的窗体上定义一个你的类的类型的成员变量,并且调用它。

u013845168
_RunTimeException 那其他窗体能够使用这个吗
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
C#刷子类画笔类
刷子累和画笔类的例题,可以用来做讲课习题。随机的大小圆随机颜色
C# 反射指定类的子类
rn 我想使用C#的反射机制,反射出一个类的所有子类rnrn[code=C#]rnrn //抽象类rnrn abstract class IBlockrn rn ///内容省略rn rnrn class LineBlock : IBlockrn rn ///内容省略rn rnrn class SquareBlock : IBlockrn rn ///内容省略rn rnrnrn //接口rnrn interface ISquarern rn ///内容省略rn rnrn class Round : ISquarern rn ///内容省略rn rnrn class Square : ISquarern rn ///内容省略rn rnrnrn //反射方法rnrn /// rn /// 獲取指定類型的子類名稱rn /// rn /// rn /// rn private List GetSubClassName(Type superClassType)rn rn List list = new List();rnrn Assembly a = Assembly.GetAssembly(superClassType);rn foreach (Type t in a.GetTypes())rn rn //是否是類rn if (t.IsClass)rn rn //是否是當前類的派生類rn if (t.IsSubclassOf(superClassType))rn rn list.Add(t.Name);rn rn rn rnrn return list;rn rnrnrn //执行方法rn List list1=GetSubClassName(typeof(ISquare));rnrn List list2=GetSubClassName(typeof(IBlock));rnrn //结果rn list1里面有"LineBlock"和"SquareBlock"两个值rn list2是空值rnrn rn 我觉得是下面这句的问题rn if (t.IsSubclassOf(superClassType))rnrn 有人知道为什么吗?rnrn[/code]
窗体类多继承, 子类消息映射应该怎么写?
消息映射写一个基类的,也提示冲突rnrnclass CXXXXDlg : public CBaseDlg1, CBaseDlg2rnrn...rn;rnrnrn//这里怎么写都编译不过rnBEGIN_MESSAGE_MAP(CXXXXDlg, CBaseDlg1)rn ON_WM_PAINT()rnEND_MESSAGE_MAP()rnrn//这样也不行rnBEGIN_MESSAGE_MAP(CXXXXDlg, CBaseDlg2)rn ON_WM_PAINT()rnEND_MESSAGE_MAP()rnrn error C2594: 'static_cast' : ambiguous conversions from 'void (__cdecl CXXXXDlg::* )(void)' to 'void (__cdecl CWnd::* )(void)'rn单继承就没问题rnrnrn还有这个,应该怎么写? 这里只能这与一个呀, 有什么方法把两个基类都加上?rnIMPLEMENT_DYNAMIC(CXXXXDlg, CMultiLangXXXDlg)rnrnIMPLEMENT_DYNAMIC(CThinkWowWelcomeDlg, CBKXXXDlg)rnrn
c#中怎么创建窗体类
private void toolStripButton1_Click(object sender, EventArgs e)rn rn frmEdit frm = new frmEdit();rn frm.Mdiparent = this;rn frm.Show();rn rnrn 在生成的时候提示frmEdit没有using他的命名空间,这个是不是应该是自己创建的一个窗体了,我是菜鸟,希望能得到详细的讲解,不胜感激
C#窗体类的小问题
C #中WindowsFormsApplication1.exe和WindowsFormsApplication1.vshost.exe这两个应用程序有什么区别,如果想要结束进程除了使用任务管理器结束还有没有其它什么方法?
C# 怎么从窗体传值到类里面 ?
RT C# 怎么从窗体传值到类里面 ?rnrnrn窗体到窗体我可以弄 就是不知道怎么从窗体传到类
C# 悬浮窗体类
窗体靠边自动隐藏和显示。调用时在构造函数中引用需要实现悬浮的窗体和所需控件即可实现该窗体的悬浮功能。
C#中 窗体与类
窗体是类吗 窗体是控件吗 rn我百度,谷歌了半天,答案都很模糊。有高手能给我详细解释吗
类和子类
package ch3; import ch3.MyClass1; public class Test { public void func(){ MyClass1 obj1 = new MyClass1(); // 公共属性,任何地方都可以访问 System.out.println(obj1.a); // Error,b为私有属性,类外无法访问 System.out.p...
C#如何将类 作为参数传递
假设我要实现这样一个功能.主程序有若干formrnform1,form2,form3.....rn现在要写一个函数函数void showForm(Form frm)rn能实现showForm(form1)就显示form1吗,showForm(form2)就显示form2吗.....?rnrn
把类作为参数在窗体间传送
已知一个类CryClass,其类型是CrystalDecisions.CrystalReports.Engine.ReportClass,我想把这个类CryClass作为参数在窗体间传送,在目的窗体中实例化。就像:rnrn public FormPrintPreview(CrystalDecisions.CrystalReports.Engine.ReportClass CryClass)rn rn InitializeComponent();rn CryClass CryClass1 = new CryClass();rn rnrnrn我大概知道要用到反射,请给出具体代码,谢谢!
C# 获取子类和实现接口的类
获取一个Assembly下的子类 var bases = Assembly .GetExecutingAssembly() .GetTypes() .Where(item => item.IsSubclassOf(typeof(Base)) ) .Select(type => (Base)Activato
C#中的类,子类,类的继承(待续)
C#中的类,子类,类的继承 方法
获取子类窗体id?
我定义了baseForm,然后用mainform去继承这个baseform,然后现在我想获取mainform的name,rn我在mainform窗体按钮事件中用this.Name结果得到的是baseform的name,rn请问我该如何做才能获得mainform的name??rn注:这里说name指的是窗体的id
C# 窗体优化类DevComponents.DotNetBar2.dll
C# 窗体优化类库,office 2007风格
c# 类在不同窗体使用
建立了一个类Usersrnrn public class Usersrn rn public string name;rn public int userid;rnrn public Users(string newName, int newUserID)rn rn this.name = newName;rn this.userid = newUserID;rn rnrn rnrn然后在frm1中赋值,rnUsers User = new Users("abc",1);rnrn请教, 我如何才能在frm2里面rn用User.name把值提出来rnrn谢谢
C#窗体怎么替换?
登陆窗口 确定后跳转到主窗口 怎么样才能同时关闭登陆窗口?详细点
c# 窗体、控件打印类
可以很方便的打印窗体及窗体上的控件,带源码及演示程序。给各位同学使用
eclipse中怎么查看当前类的子类
把类的名称选中,按ctrl+t。
孩子类和祖先类的构造函数怎么运行?
有孩子类B 继承自祖先类A,B 和A中各有一个构造函数,在创建B时,两个构造函数,怎么运行?是都执行还是单执行B的?若是都运行是先运行谁的?rnrn请各位大虾不吝赐教rnrn
c#自定义控件怎么作为容器
怎么自定义类似TabControl控件,4个按钮4个Panel,点1个按钮换1个Panel,写好后到别的地方引用,Panel就不是容器了,控件拖不进去,求解怎么做
怎么在继承自窗体类的子类中操作(最原始的)窗体控件?
上代码:rn[code=csharp]rn public partial class Form1 : Formrn rn public Form1(int code) rnrn public Form1()rn rn InitializeComponent();rn rnrn public class A : Form1rn rn public A()// : base(0)rn rn base.InitializeComponent();rn rnrn public void B()rn rn base.textBox1.Text = "changed";rn base.comboBox1.SelectedIndex = 0;rn rn rnrn private void Form1_Load(object sender, EventArgs e)rn rn new A().B();rn rn rn[/code]rn注释掉的还有其他自己加的东西都是失败的尝试。rn具体原因我知道是实例化 A 然后运行 B 方法时指向的是重新实例化过的窗体Form1。rn我想知道有没有办法解决。rn别问我具体的需求,我不知道[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/onion/4.gif][/img]仅仅是好奇或者是一种尝试,有空的有兴趣的大神随便解答下也行
标签类的子类tabsheet
标签类的子类tabsheet
Javascript的类与子类创建
声明父类与子类的示例: /** * Created by Administrator on 2015/12/23. */ //声明Rectangle类 function Rectangle(w, h) { this.width = w; this.height = h; } Rectangle.prototype.area = function () { ...
5.1 类、超类和子类
关键字extends表示继承,表明正在构造的新类派生于一个已存在的类。 已存在的类称为超类(superclass)、基类、或父类;新类称为子类(subclass)、派生类或或孩子类。 子类比超类拥有的功能更加丰富。 在通过扩展超类定义子类的时候,仅需要支出子类与超类的不同之处。然而超类中有些方法对子类不一定使用,为此需要提供一个新的方法来覆盖(overdide)超类中的这个方法。
类和子类的调用问题
平常,一个类要在其他的类中定义或调用只需在该类头文件中加上调用类的文件即可.rn如果这里我要调用的是子类呢?rn例如:rnclass CBookrnrn class CEnglishBookrn rnrn rn rnrn如上定义,我要在另一个类CStudent中调用CEnglishBook,该怎么做?
python的类与子类
文章目录类子类 类 1、类的定义 类是用来将代码与代码处理的数据相关联,有助于降低复杂性,更易维护代码; python也提供了一种方法将代码及其处理的数据定义为一个类,一旦有了类,就可以用它来创建(或实例化)数据对象,它会继承类的特性; 在面向对象的世界里,代码通常称为类的方法method,而数据通常称为类的属性attribute,实例化的数据对象通常称为实例instance。 每个对象都由类创建...
类和子类的问题,请教
类B是通过public继承方式从类A派生而来的,且类A和类B都有完整的实现代码,那么下列说法正确的是: rnA. 类B中具有pubic可访问性的成员函数个数一定不少于类A中public成员函数的个数。 rnrnB. 一个类B的实例对象占用的内存空间一定不少于一个类A的实例对象占用的内存空间。 rnrnC. 只要类B中的构造函数都是public的,在main函数中就可以创建类B的实例对象。 rnrnD. 类A和类B中的同名虚函数的返回值类型必须完全一致。 rnrn我觉得ABD都对,你们觉得呢?
Java入门 类与子类
本代码用类和子类实现了输出复数的功能。适合初学者参考学习
Android-Thread类的子类创建线程
Thread类的子类创建线程 优点:可以在子类中增加新的成员变量,使线程具有某种属性, 也可以在子类中新增方法,使线程具有某种能力。 在Java语言中,用Thread类或子类创建线程对象 在编写Thread类的子类中,需要重写父类的run()方法,目的是规定线程的具体操作,否则线程什么也不做, 因为父类的run()方法中没有任何操作语句 代码: public class Demo43{ publi...
获取类的所有子类
开发过程中,有时需要获取某个包下的所有类,或者基于指定规则获取类清单。 比较常见的解决方案是自己遍历目录,查找所有.class文件。 下面这个方法使用spring工具类实现,简化过程,不再需要自己遍历目录 /** * 获取在指定包下某个class的所有非抽象子类 * * @param parentClass * ...
关于多线程类的子类
有一个类A为多线程类:rnclass A implements Runnablernrn...rnrnB为A的子类rnclass B extends Arnrn...rnrnrn这时的B是多线程类吗?还是需要:rnclass B extends A implements Runnablernrn...rnrnrn多谢!
C#窗体传值 AFrom窗体和BForm窗体和Info类
rn 还是窗口传值 rnrn AFrom窗体和BForm窗体和Info类rnrn rn public Infornrn public string Nameget;set;rnrnrnrnrnBForm构造函数 rnprivate Info binfo;rnpublic BForm(Info _info)this.binfo=_info;this.binfo="YYYY";rnrn然后就是AForm按钮打开BForm窗口rnprivate void button1_Click(object sender, EventArgs e)rnrn Info info=new Info();rn info.Name="XXX";rn BForm bform=new BForm(info);rn bform.ShowDialog();rn MessageBox.Show(info.Name);rn rnrnrn打开bform之后,我发现在bform中改变binfo之后,AForm窗口中的info也随之改变了,这是怎么回事?为什么info也变成了YYYY?rnrn有什么办法info.Name不会被BForm改变?rnrnrn
C# 怎么创建继承的子类的程序集
[code=C#]rn//先看我的代码嘛rnrn//父类:rnusing System;rnusing System.Collections.Generic;rnusing System.Linq;rnusing System.Text;rnrnrnnamespace Wishrnrn public class Employeern rn public virtual void KouHao()rn rn rn rn rnrnrn rnrn//子类:rnusing System;rnusing System.Collections.Generic;rnusing System.Linq;rnusing System.Text;rnusing Wish;rnrnnamespace ChongQingrnrn public class Student : Employeern rn public override void KouHao()rn rn Console.WriteLine("我是重庆中心的学生");rn rn rnrnrn[/code]rnrn就是dos命令里生成子类的dll文件!rnrn我用csc/out:Student.dll /t:library Student.cs,报如下错误!rnrn但是我在student里以引用了父类的程序集的啊!rn[img=http://hi.csdn.net/attachment/201006/22/3877417_12772104034thG.jpg][/img]rnrnrn
请教怎么使用“类中类”(还是子类)?
我不知道这样称呼一个“类(Class)”里面的另一个“子类”对不对?rn每次修改一个表,一般都是把里面的字段(又想问问,字段(field)和列(column)是不是同一回事?),全部都update一次(除了id字段)。前几天突然想到,如果只修改表里面的一两个字段的话,可以不用全部update所有字段啊!于是就想到,把要修改的字段的字段名、类型和值,放入一个字符串数组(例如:String[3]),然后放入ArrayList里面,再有第二个、第三个,也同样处理。rn于是又搞了一个SimpleUpdate的类。方法也写好了。rn今天又心血来潮,觉得用字符串数组,还要记住[0]是字段类型、[1]是字段名、[2]是值,怕搞乱了,干脆在SimpleUpdate里面,再整一个“子类”(这样称呼对不对?)代码如下:rn[code=java]rnpackage entity;rnrnimport java.util.ArrayList;rnrnpublic class SimpleUpdate rn rn public class Fieldrn private String fieldName;rn private String fieldClass;rn private String fieldValue;rn rn public Field (String fieldName, String fieldClass,rn String fieldValue)rn this.fieldClass=fieldClass;rn this.fieldName=fieldName;rn this.fieldValue=fieldValue;rn rn rn public Field()rn rn rn public String getFieldClass() rn return fieldClass;rn rn public void setFieldClass(String fieldClass) rn this.fieldClass = fieldClass;rn rn public String getFieldName() rn return fieldName;rn rn public void setFieldName(String fieldName) rn this.fieldName = fieldName;rn rn public String getFieldValue() rn return fieldValue;rn rn public void setFieldValue(String fieldValue) rn this.fieldValue = fieldValue;rn rn rn rn private int sn;rn private String tableName;rn private String condition; //此处不为null时,sn就没用了。rn private Field field;rn private ArrayList content;rn //private String[][] content2; 不肯定那种方式比较好rn rn public Field getField()rn return field;rn rn public void setField(Field field)rn this.field=field;rn rn rn public String getCondition() rn return condition;rn rn public void setCondition(String condition) rn this.condition = condition;rn rn public ArrayList getContent() rn return content;rn rn public void setContent(ArrayList content) rn this.content = content;rn rn public int getSn() rn return sn;rn rn public void setSn(int sn) rn this.sn = sn;rn rn public String getTableName() rn return tableName;rn rn public void setTableName(String tableName) rn this.tableName = tableName;rn rnrn[/code]rnrn但在应用层(Servlets),却死活拿不出来用。rn[img=https://img-bbs.csdn.net/upload/201905/02/1556807727_382639.jpg][/img]rn代码如下:rn[code=java]rn SimpleUpdate su=new SimpleUpdate();rn su.setTableName("employee");rn su.setSn(br.getManager().getSn());rn su.setField(new Field());rn Field f=new Field();rn f.setFieldClass("tinyint");rn f.setFieldName("branchSn");rn f.setFieldValue(sn+"");rn rn ArrayList cc=new ArrayList();rn cc.add(f); //总想不要这两个变量,但好像不行。rn rn[/code]rn报错信息如下:rnNo enclosing instance of type SimpleUpdate is accessible. Must qualify the allocation with an enclosing instance of type SimpleUpdate (e.g. x.new A() where x is an instance of SimpleUpdate).rn无法访问类型SimpleUpdate的封闭实例。必须使用SimpleUpdate类型的封闭实例(例如x.newA(),其中x是SimpleUpdate的实例)限定分配。rnrn请问怎么解决呢?
C#反射类中的子类(即嵌套子类),类之间用“+”连接
要反射的程序集代码: namespace ReflectionClassLibrary { /// <summary> /// 第一层 /// </summary> public class A { /// <summary> /// 第二层 /// </summa...
钩子类,可以用的钩子类(C#源码)
绝对可以用的钩子类,已经风装好的鼠标和键盘事件.......
mysql类作为参数传递该怎么赋值?
RTrnrnMYSQL mysql;rnmysql_init (&mysql);rnrn然后在别的窗口类里要用到mysql这个类,怎么把这个类传过去??rnrn别的类里rnMYSQL m_mysql;rnm_mysql = mysql;这样是肯定不行的吧。。。用指针?rnrn
怎么在C#一个类中控制它的窗体类阿
例如,我在非窗体类中做了一个操作,来改变窗体类一个控件的属性,例如改变一个label的text属性。rnrn我用事件改变了,每次事件被激发,我都改变label的值,可是程序界面看不到这个效果,除非程序停止,这是为什么?rnrn
请问C#怎么从窗体中读取类里的参数值?
我定义一个类存放初始的参数,在设置窗口中这些参数进行赋值并保存。然后在主程序窗口中需要读取这些保存的参数值,怎么实现?谢谢!
相关热词 c# stream 复制 android c# c#监测窗口句柄 c# md5 引用 c# 判断tabtip 自己写个浏览器程序c# c# 字符串变成整数数组 c#语言编程写出一个方法 c# 转盘抽奖 c#选中treeview