调用构造函数带数组参数的winForm窗口

wlcsdf 2012-11-22 02:37:18
C# winform程序,初始界面为form1窗口。program.cs中MAIN函数调用form1窗口的代码如下:

public static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.DoEvents();
Application.Run(new Form1(args));
}


form1窗口的构造函数如下:

public Form1(string[] args)
{
initializeComponent();
......
}

以上程序运行正常。我现在想把初始界面设为frmMain窗口,从frmMain窗口中再调用form1窗口。调用代码如下:

private void toolStripMenuItem39_Click(object sender, EventArgs e)
{
new DocumentProcessing.Form1(new string[]{"1","2","3"}).ShowDialog();
}

虽然可以运行,但是会先弹出一个错误提示框,显示“IO Error”,然后调出from1窗口。请问有什么好的调用办法吗?
顺便说一下,以下调用方法是不可行的。

private void toolStripMenuItem39_Click(object sender, EventArgs e)
{
new DocumentProcessing.Form1(string[] args).ShowDialog();
}
...全文
159 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wlcsdf 2012-12-06
  • 打赏
  • 举报
回复
发一个正确的。

public string[] aaa={};
private void toolStripMenuItem39_Click(object sender, EventArgs e)
{
 new DocumentProcessing.Form1(aaa).ShowDialog();
}
wlcsdf 2012-12-06
  • 打赏
  • 举报
回复
自己解决。

    string[] args="";
    private void toolStripMenuItem39_Click(object sender, EventArgs e)              {              new DocumentProcessing.Form1(args).ShowDialog();              }
bdmh 2012-11-22
  • 打赏
  • 举报
回复
将frmMain做成和form1一样的接受args参数,然后 Application.Run(new Main(args));
wangyd324 2012-11-22
  • 打赏
  • 举报
回复
引用 1 楼 Q1092926267 的回复:
没报错 不知道你那什么情况 new DocumentProcessing.Form1(string[] args).ShowDialog(); 当然不可以你是要传递一个数组 不是定义一个
这个不是在new的时候已经传递了数组吗? 这样的打开一个form应该没问题吧
six-years 2012-11-22
  • 打赏
  • 举报
回复
没报错 不知道你那什么情况 new DocumentProcessing.Form1(string[] args).ShowDialog(); 当然不可以你是要传递一个数组 不是定义一个
没法下载,到这里折腾一把试试。 本文由abc2253130贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 C#(WINFORM)学习 一、 C#基础 基础 类型和变量 类型和变量 类型 C# 支持两种类型:“值类型”和“引用类型”。值类型包括简单类型(如 char、int 和 float 等)、枚举类型和结构类型。引用类型包括类 (Class)类 型、接口类型、委托类型和数组类型。 变量的类型声明 变量的类型声明 每个变量必须预先声明其类型。如 int a; int b = 100; float j = 4.5; string s1; 用 object 可以表示所有的类型。 预定义类型 下表列出了预定义类型,并说明如何使用。 类型 object 说明 所有其他类型的最终 基类型 字符串类型; 字符串是 Unicode 字符序列 8 位有符号整型 16 位有符号整型 32 位有符号整型 64 位有符号整型 示例 object o = null; 范围 string sbyte short int long string s = "hello"; sbyte val = 12; short val = 12; int val = 12; long val1 = 12; -128 到 127 -32,768 到 32,767 -2,147,483,648 2,147,483,647 -9,223,372,036,854,775,808 到 第1页 C#(WINFORM)学习 long val2 = 34L; 到 9,223,372,036,854,775,807 byte ushort 8 位无符号整型 16 位无符号整型 byte val1 = 12; ushort val1 = 12; uint val1 = 12; uint 32 位无符号整型 uint val2 = 34U; ulong val1 = 12; ulong val2 = 34U; ulong 64 位无符号整型 ulong val3 = 56L; ulong val4 = 78UL; float 单精度浮点型 float val = 1.23F;7 位 double val1 = 1.23; double 双精度浮点型 double val2 = ±5.0 × 10?324 ±1.7 × 10 308 0 到 255 0 到 65,535 0 到 4,294,967,295 0 到 18,446,744,073,709,551,615 ±1.5 × 10?45 ±3.4 × 10 38 到 到 4.56D;15-16 布尔型;bool 值或为 真或为假 字符类型;char 值是 一个 Unicode 字符 精确的小数类型, 具有 28 个有效数字 bool val1 = true; bool val2 = false; char val = 'h'; decimal val = bool char decimal DateTime ±1.0 × 10?28 ±7.9 × 10 28 到 1.23M;28-29 变量转换 简单转换: float f = 100.1234f; 可以用括号转换: short s = (short)f 也可以利用 Convert 方法来转换: string s1; s1=Convert.ToString(a); MessageBox.Show(s1); 常用 Convert 方法有: 第2页 C#(WINFORM)学习 C# Convert.ToBoolean Convert.ToByte Convert.ToChar Convert.ToDateTime Convert.ToDecimal Convert.ToDouble Convert.ToInt16 Convert.ToInt32 Convert.ToInt64 Convert.ToSByte Convert.ToSingle Convert.ToString Convert.ToUInt16 Convert.ToUInt32 Convert.ToUInt64 备注 Math 类 常用科学计算方法: C# Math.Abs Math.Sqrt Math.Ro
很好的C#培训教程,适合初学者使用 目 录 1 .NET体系结构 7 1.1 什么是.NET Framwork? 7 1.2 .NET Framework的内容 7 1.3 如何用.NET Framework编写应用程序 8 1.4 MSIL和JIT 8 1.5 程序集 9 1.6 托管代码 9 1.7 垃圾回收 9 1.8 链接 10 1.9 实例分析 11 1.10 内容总结 13 1.11 独立实践 14 2 C#基础 15 2.1 面向对象基本概念 15 2.2 变量 18 2.3 常量 22 2.4 预定义数据类型 22 2.5 流控制 28 2.6 数组 37 2.7 命名空间 38 2.8 C#预处理器指令 44 2.9 C#编程规则 46 2.10 内容总结 50 2.11 独立实践 50 3 对象和结构 52 3.1 类和结构 52 3.2 类和成员 53 3.3 构造函数 60 3.4 结构 65 3.5 部分类 68 3.6 内容总结 72 3.7 独立实践 72 4 继承 73 4.1 继承的类型 73 4.2 结构和类 75 4.3 调用函数的基类版本 76 4.4 抽象类和抽象函数 77 4.5 密封类和密封方法 79 4.6 修饰符 80 4.7 接口 81 4.8 内容总结 86 4.9 独立实践 86 5 委托与事件 88 5.1 事件的原理 88 5.2 简单的自定义事件 89 5.3 预定义事件处理机制 92 5.4 内容总结 100 5.5 独立实践 100 6 运算符和类型强制转换 101 6.1 运算符 101 6.2 运算符的简化操作 102 6.3 类型的安全性 107 6.4 类型转换 108 6.5 装箱和拆箱 111 6.6 对象的相等比较 112 6.7 引用类型的相等比较 112 6.8 运算符重载 114 6.9 运算符的工作方式 114 6.10 用户定义的数据类型转换 118 6.11 执行用户定义的类型转换 119 6.12 多重数据类型转换 126 6.13 内容总结 130 6.14 独立实践 131 7 字符串与正则表达式 132 7.1 System.String类 132 7.2 StringBuilder成员 135 7.3 字符串的格式化 138 7.4 正则表达式概述 142 7.5 内容总结 149 7.6 独立实践 150 8 集合 151 8.1 集合 151 8.2 索引器 152 8.3 集合接口 155 8.4 字典 157 8.4.1 现实生活中的字典 158 8.4.2 .NET中的字典 158 8.4.3 字典的工作情况 160 8.5 内容总结 167 8.6 独立实践 167 9 错误与异常 168 9.1 错误和异常 168 9.2 捕获异常 170 9.3 System.Exception属性 177 9.4 嵌套的 try块 178 9.5 用户定义的异常类 180 9.6 内容总结 189 9.7 独立实践 189 10 内存管理与指针 190 10.1 后台内存管理 190 10.2 值数据类型 190 10.3 引用数据类型 192 10.4 垃圾收集 194 10.5 释放未托管的资源 195 10.6 析构函数 195 10.7 IDisposable接口 196 10.8 实现IDisposable接口和析构函数 198 10.9 不安全的代码 199 10.10 指针 200 10.11 使用指针优化性能 213 10.12 内容总结 217 11 泛型 218 11.1 泛型的概念 218 11.2 使用泛型 219 11.3 可空类型 219 11.4 运算符和可空类型 220 11.5 System.Collections.Generic命名空间 227 11.6 定义泛型类 237 11.7 default关键字 239 11.8 约束类型 240 11.9 从泛型类中继承 247 11.10 泛型运算符 248 11.11 泛型结构 250 11.12 定义泛型接口 250 11.13 定义泛型方法 251 11.14 定义泛型委托 253 11.15 独立实践 253 12 反射 254 12.1 定制特性 254 12.2 编写定制特性 255 12.3 指定特性参数 258 12.4 VectorClass程序集 261 12.5 反射 263 12.6 查找定制特性 269 12.7 内容总结 273 13 线程 274 13.1 线程 274 13.2 多线程应用程序 275 13.3 线程的处理 276 13.4 线程的优先级 282 13.5 同步 283 13.6 同步问题 285 13.7 内容总结 288 14 Winform基本概念 289 14.1 .NET Windows应用程序开发 289 14.2 .NET框架类库简介 289 14.3 事件和事件处理程序 290 14.4 事件参数 290 14.5 Windows 应用程序 290 14.6 窗体属性、方法和事件 291 14.7 this 关键字 292 14.8 控件概念 292 14.9 各种类型控件 292 14.10 控件的一些通用属性 294 14.11 标签、文本框、按钮控件简介 295 14.12 列表框控件简介 296 14.13 复选列表框 296 14.14 组合框 296 14.15 内容总结 302 15 Winform控件 303 15.1 控件分类 303 15.2 在窗体之间建立链接 307 15.3 应用程序的启动和关闭 308 15.4 内容总结 308 16 高级用户界面 309 16.1 打印控件的使用 309 16.2 PrintDocument组件 309 16.3 PrintPreviewControl组件 310 16.4 PrintDialog 组件 310 16.5 PrintPreviewDialog组件 311 16.6 PageSetUpDialog控件 311 16.7 对话框 311 16.8 通用对话框 312 16.9 OpenFileDialog控件 312 16.10 SaveFileDialog控件 312 16.11 FontDialog控件 312 16.12 ColorDialog控件 312 16.13 MessageBox消息框 313 16.14 WinForms 中的可视效果 314 16.15 内容总结 315 17 MDI应用程序 316 17.1 SDI程序 316 17.2 MDI程序 316 17.3 MenuStrip和ToolStripMenuItem 317 17.4 toolStrip控件简介 318 17.5 StatusStrip控件 320 17.6 创建对话框 320 17.7 内容总结 321 18 ADO.NET编程 322 18.1 简介 322 18.2 ADO.NET 的优点 322 18.3 ADO.NET 结构 324 18.4 ADO.NET 的基本组件 325 18.5 DataReader 328 18.6 获取单个值 328 18.7 修改数据库中的数据 329 18.8 从SQL Server获取XML数据 329 18.9 DataAdapter 330 18.10 数据集:DataSet 330 18.11 DataTable 330 18.12 DataView 332 18.13 关系 332 18.14 数据绑定 333 18.15 DataRow 简介 335 18.16 操纵数据源中的值 336 18.17 内容总结 336 19 GDI+ 编程 337 19.1 理解绘图规则 337 19.2 测量坐标和区域 341 19.3 绘制可滚动的窗口 343 19.4 颜色 348 19.5 画笔和钢笔 351 19.6 绘制图形和线条 352 19.7 显示图像 355 19.8 绘制文本 357 19.9 字体和字体系列 359 19.10 内容总结 363 20 自定义控件 364 20.1 添加事件处理程序 368 20.2 添加更多的属性 370 20.3 内容总结 372 21 部署与安装 373 21.1 部署的设计 373 21.2 无干涉部署 387 21.3 内容总结 394 22 ASP.NET与Web窗口简介 395 22.1 应用程序方案 395 22.2 Web 应用程序开发周期 399 五个对象实现了服务器端的请求 403 22.3 ASP.NET 的演变 404 22.4 Global.asax 文件 405 22.5 发布网站 408 22.6 内容总结 408 23 ASP.NET中的内置对象 409 23.1 ASP.NET页面 409 23.2 虚拟目录 421 23.3 内容总结 423 24 Web服务器控件 424 24.1 Web 控件 424 24.2 复杂控件 429 24.3 内容总结 431 25 HTML控件 432 25.1 服务器控件 432 25.2 HTMLForm控件 432 25.3 Web服务器控件优缺点 433 25.4 HTML服务器控件优缺点 433 25.5 使用服务器控件设计页面建议 433 25.6 内容总结 439 26 深入服务器对象 440 26.1 Global.asax文件简介 441 26.2 Application 对象 446 26.3 HttpServerUtility类和Server对象 446 26.4 HttpSessionState类和Session对象 448 26.5 内容总结 449 27 ADO.NET WEB应用 450 27.1 回顾ADO.NET 450 27.2 模板概念 464 27.3 ASP.NET 中的数据处理 465 27.4 内容总结 466 28 WEB服务器基础 467 28.1 ASP.NET Web 服务 467 28.2 编写简单的 Web 服务 468 28.3 内容总结 470 28.4 独立实践 470 29 用户控件 471 29.1 用户控件开发 471 29.2 内容总结 479 29.3 独立实践 480 30 Web部署 481 30.1 使用XCOPY部署 481 30.2 使用Visual studio的Copy Web Site功能部署 482 30.3 使用Visual Studio的Precompilation预编译部署 482 30.4 内容总结 483 30.5 独立实践 484

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧