一.添加资源(图片,文字之类)

Winform开发中经常会要用到一些文件,例如给控件加背景图之类的。但是Winform不想Web开发,直接把图片放到项目下,调用的时候直接相对目录就可以了。

WinForm里就相对比较麻烦了,可以通过下面方式实现:
①在工程的根目录下找到文件夹Properties,下的文件Resources.resx,双击打开

②添加资源=>添加现有文件  选择好后保存即可。

③给控件绑定图片时,肯定会打开"选择资源"窗口(这个应该都见过)。选择"项目资源文件",这样之前添加的文件就会自动显示在下面,选中 确定 OK。


二.两个combobox共用一个数据源的问题

当在一个页面中多个combobox共用一个数据源时,就会发生一个奇怪的现象:如果一个combobox的选中状况发生变化时,其他的也会发生同样的变化(即选中的项一直是相同的)。

数据源有多种类型,这里给出DataSet和List的解决方法:

①DataSet可以使用Copy方法:

DataSet ds = new DataSet();comboBox1.DataSource = ds;
comboBox2.DataSource = ds.Copy();

②List可以使用ToArray或ToList方法:

List<int> list = new List<int>();
list.Add(10);
list.Add(20);
list.Add(30);comboBox1.DataSource = list;
comboBox2.DataSource = list.ToArray();

List<int> list = new List<int>();
list.Add(10);
list.Add(20);
list.Add(30);
comboBox1.DataSource = list;
comboBox2.DataSource = list.ToList();


三.当关闭子窗口时,父窗口也随之关闭的问题
原因不详
解决方法:当窗口关闭的时候,在窗口关闭事件对象会有一个存放关闭原因的属性(CloseReason)和是否取消关闭属性(Cancel)
在父窗口的关闭事件中,如果是因为子窗口关闭而引起的关闭,则e.CloseReason是CloseReason.None;
如果是用户点击的关闭按钮或者执行Form.Close()方法的话,则e.CloseReason是CloseReason.UserClosing;
所以只需要判断e.CloseReason的值,然后设定e.Cancel为true(取消关闭)即可。

private void Main_FormClosing(object sender, FormClosingEventArgs e)
{if (e.CloseReason == CloseReason.None){e.Cancel = true;}
}


四.禁止窗口的可调整大小
设置Form的FormBorderStyle为FixedSingle
去掉最大化最小化按钮:将MaximizeBox和MinimumBox设为false;



转载于:https://www.cnblogs.com/TiestoRay/archive/2013/05/17/2966664.html

WinForm开发之点滴整理相关推荐

  1. .NET C/S(WinForm)开发技巧点滴(转)

    花费了十天时间,为公司开发了一套简单的网络版的信息管理系统,功能主要有客户信息管理,员工信息管理,常用信息管理(各种信函打印.常用网址/常用电话等),公司简单的财务管理等.把一些点点滴滴的技巧在此记录 ...

  2. WinForm开发,窗体显示和窗体传值相关知识总结

    以前对WinForm窗体显示和窗体间传值了解不是很清楚 最近做了一些WinForm开发,把用到的相关知识整理如下 A.WinForm中窗体显示显示窗体可以有以下2种方法: Form.ShowDialo ...

  3. C# WinForm开发系列 - DataGrid/DataGridView

    在WinForm开发中,DataGrid/DataGridView被广泛使用于绑定数据库中数据进行呈现.整理一些关于DataGrid /DataGridView使用的文章,涉及DataGrid/Dat ...

  4. winform php 交互,WinForm开发,窗体显示和窗体传值

    以前对WinForm窗体显示和窗体间传值了解不是很清楚 最近做了一些WinForm开发,把用到的相关知识整理如下 A.WinForm中窗体显示 显示窗体可以有以下2种方法: Form.ShowDial ...

  5. C# WinForm开发系列 - GDI+【转】

    http://blog.csdn.net/blue_sky6/article/details/53811435?locationNum=6&fps=1 C# WinForm开发系列 - GDI ...

  6. 在Winform开发中使用FastReport创建报表

    FastReport.Net是一款适用于Windows Forms, ASP.NET和MVC框架的功能齐全的报表分析解决方案.可用在Microsoft Visual Studio 2005到2015, ...

  7. [转载]C# WinForm开发系列 - 文章索引

    该系列主要整理收集在使用C#开发WinForm应用文章及相关代码, 平时看到大家主要使用C#来开发Asp.Net应用,这方面的文章也特别多,而关于WinForm的文章相对少很多,而自己对WinForm ...

  8. C# WinForm开发系列

    文章来源:博客园 该系列主要整理收集在使用C#开发WinForm应用文章及相关代码, 平时看到大家主要使用C#来开发Asp.Net应用,这方面的文章也特别多,而关于WinForm的文章相对少很多,而自 ...

  9. C# WinForm开发系列 - Open-Source Controls

    整理了一些在WinForm开发中可以使用的开源组件.(文章及相关代码搜集自网络,仅供学习参考,版权属于原作者! ). 1. 仿office 2007的Ribbon风格面板(该控件模仿office 20 ...

  10. C# WinForm开发系列 - OWC

    OWC(Microsoft Office Web Components)是 Microsoft Office 使用的数据绑定 ActiveX 控件,用于向 Web 页添加图表功能.OWC支持Micro ...

最新文章

  1. 苹果6屏幕多大_相较前段新鲜感满满,谈谈苹果12这几天的实际感受
  2. SlickGrid控件最后一行触数据更新条件
  3. 机器学习中 True Positives(真正例TP)、False Positives(假正例FP)、True Negatives(真负例TN)和 False Negatives(假负例FN)指什么
  4. Java1.使用二分搜索算法查找任意N个有序数列中的指定元素。 2.通过上机实验进行算法实现。 3.保存和打印出程序的运行结果,并结合程序进行分析,上交实验报告。 4.至少使用两种方法进行编程,直接查
  5. oracle11g 隐藏参数_oracle隐含参数的查看与修改
  6. shopt_Linux命令
  7. Flex 布局 - 容器
  8. AI (1)---没错,AR其实也是AI
  9. can't resolve symbol 'R' ...
  10. VMware 虚拟机安装系统
  11. 高级电工、模电、数电、电力拖动实验室成套设备
  12. 2014年9月16日----暴风影音笔试题
  13. embed标签属性的介绍和用法
  14. 【算法导论-36】并查集(Disjoint Set)具体解释
  15. 2020首届海洋目标智能感知国际挑战赛 冠军方案分享
  16. 敏捷管理第四章《敏捷落地--团队试点》
  17. Android 10 拨打电话流程
  18. linux防ddos攻击脚本,Linux IPTables防DDOS攻击Shell脚本
  19. Kd树实现knn算法(python)
  20. xinetd(安装及配置xinetd)

热门文章

  1. [开发手记] 在WinForm应用程序中打开Url
  2. Linux音频驱动-ASOC之Machine
  3. keepalived+LVS 详解(3) -- VRRP协议简介
  4. 1.1.2 Greedy Gift Givers 贪婪的送礼者
  5. pandas cut qcut 分箱算法详解
  6. python批量下载静态页面_Python selenium如何打包静态网页并下载
  7. python是不是都是英语_python为什么最近很流行?各种应用文档全是英文的吗?
  8. 什么会造成os.chdir not nonetype_Python有什么不为人知的坑?
  9. mac mysql docker_docker学习(5) 在mac中创建mysql docker容器
  10. 前端工程师拿到全新的 Mac 需要做哪些准备