【C# winform中使用Panel调节窗口变化是各控件的位置(转)】教程文章相关的互联网学习教程文章

C# Winform 跨线程更新UI控件常用方法汇总【代码】

本文转载自:https://www.cnblogs.com/marshal-m/p/3201051.html 概述 C#Winform编程中,跨线程直接更新UI控件的做法是不正确的,会时常出现“线程间操作无效: 从不是创建控件的线程访问它”的异常。处理跨线程更新Winform UI控件常用的方法有4种:1. 通过UI线程的SynchronizationContext的Post/Send方法更新;2. 通过UI控件的Invoke/BeginInvoke方法更新; 3. 通过BackgroundWorker取代Thread执行异步操作;4. 通过设置窗体属性,...

C# Winform同一子窗体只允许打开一次

最近在写一个小程序,遇到子窗口打开多次的情况,通过查找找到了解决办法,但是有写不尽人意,比如对子窗体最小化时的处理。 因此进行了优化得到如下代码,目前测试可能遇到的情况都完美解决,包括子窗体最小化: Form test = Application.OpenForms["about"]; //查找是否打开过about窗体 if ((test == null) || (test.IsDisposed)) //如果没有打开过{ about aboutus = new about(); aboutus.Show(); //打开子窗体出来}el...

关于C# winform唤起本地已安装应用程序(测试win10,win7可用)【代码】【图】

想要唤起本地已安装应用程序,我想到的有三种可行的方法:第一种就是打开本地的快捷方式(有的应用可能没有快捷方式,但这种方法效率最高,可配合其他方法使用),快捷方式分为本地桌面快捷方式和开始菜单中的快捷方式两种。下面讲找出快捷方式路径的方法:本地桌面快捷方式:用户可能更改过默认的桌面路径,此时以前添加的快捷方式还在默认的c盘下路径,之后创建的快捷方式则会在新的桌面路径之下。因此我们首先获取到当前桌面的目...

C# Winform自删除程序

#region MyRegion/// <summary>////// </summary>private static void DeleteItself(){string vBatFile = Path.GetDirectoryName(Application.ExecutablePath) + "\\DeleteItself.bat";using (StreamWriter vStreamWriter = new StreamWriter(vBatFile, false, Encoding.Default)){vStreamWriter.Write(string.Format(":del\r\n" +" del \"{0}\"\r\n" +"if exist \"{0}\" goto del\r\n" +"del %0\r\n", Application.ExecutablePath...

c# WinForm多线程编程篇【图】

我的多线程WinForm程序老是抛出InvalidOperationException ,怎么解决? 在WinForm中使用多线程时,常常遇到一个问题,当在子线程(非UI线程)中修改一个控件的值:比如修改进度条进度,时会抛出如下错误 Cross-thread operation not valid: Control XXX accessed from a thread other than the thread it was created on. 在VS2005或者更高版本中,只要不是在控件的创建线程(一般就是指UI主线程)上访问控件的属性就会抛出这个错...

C# Winform Chart入门【代码】【图】

首先添加引用System.Windows.Forms.DataVisualization,添加引用后,工具面板上将在数据中显示Chart,可直接拖拽到界面上。 代码中添加UsingSystem.Windows.Forms.DataVisualization.Charting;1. 当拖拽Chart到界面上时,一般来说Chart及其ChartAreas、Legend部分的背景为白色,我们可以分别通过各自的BackColor设置为透明或其他颜色。通过设置Series的ChartType属性来选择图表类型,一般常用:折线Line,柱状图Column,饼状图Pie,雷...

C# WinForm下拉TreView

winform没有默认的下拉tree的控件可是有些多级的列表需要下拉tree,下面我们的代码实现对Combbox进行扩展让它下拉显示tree.using System.Drawing; using System.Windows.Forms; namespace WindowsApplication23 { public class ComboBoxTreeView : ComboBox { private const int WM_LBUTTONDOWN = 0x201, WM_LBUTTONDBLCLK = 0x203; ToolStripControlHost treeViewHost; ToolStrip...

c# winform自定义控件和组件的开发使用——自定义Button按钮 (仿elememt组件)让桌面也充满web风格(三)【代码】【图】

已经好久没更新博客了,跟着上篇讲一下, 上一篇讲述了属性的实现,这一篇讲诉一下基本事件的实现,click事件/// <summary>/// 按钮点击事件/// </summary>[Description("按钮点击事件"), Category("自定义")]public event EventHandler BtnClick;事件触发的条件是,当按钮按下并且释放时,触发事件那么就需要在mouseup事件中调用该事件private void ButtonText_MouseUp(object sender, MouseEventArgs e){BtnClick?.Invoke(this, ...

C# winForm RichTextBox 每行显示不同颜色

/// <summary> /// 显示日志 /// </summary> /// <param name="msg">信息</param> /// <param name="color">显示颜色</param> private void ShowMsg(string msg, Color color) { if (string.IsNullOrEmpty(msg)) return;if (txtLog.IsHandleCreated) { txtLog.BeginInvoke(new Action(() => { ...

C# 实现 Winform 切换用户功能【代码】

方法一: #region 登录部分 private void RtnLoginOK_Click(object sender, EventArgs e) //登录按钮单击事件 {this.Hide();FrmRoutineMain formRtnLoginOK = new FrmRoutineMain(); //新建主窗体formRtnLoginOK.ShowDialog(); } #endregion#region 切换用户 private void RtnMainSwitchUser_Click(object sender, EventArgs e) //切换用户按钮单击事件 {if (DialogResult.Yes == MessageBox.Show("您确定要退出登陆吗?"...

C#中常见的winform控件命名规范

我们知道Button 常常简称为btn,那么Winform中的其它控件呢,这篇文章在C#的winform控件命名规范 的基础上对一些控件的名称的简称进行了整理。 1. 标准控件NO. 控件类型简写 控件类型1 btn Button2 chk CheckBox3 ckl CheckedListBox4 cmb ComboBox5 dtp DateTimePicker6 lbl Label7 llb LinkLabel8 lst ListBox9 lvw ListView10 mtx MaskedTextBox11 cdr MonthCalendar12 icn NotifyIcon13 nud NumeircUpDown14 pic PictureBox1...

c# winform 打开html界面(含引用外部文件js)

问题情境: html界面用浏览器直接打开正常,使用c#自带webbrowser打开报错(具体是js脚本相关错误) 疑难辨析: 对症下药,报错内容虽是js脚本错误,但应该知道js,html相关代码都准确无误,因为在浏览器打开正常。 考虑到webbrowser内核版本和系统自带ie浏览器版本有差别,所以问题很可能在这里。 解决方案: 最好修改webbrowser默认浏览器内核版本,暂未找到。可以先修改自己程序对应的浏览器内核版本。 通过注册表进行修改,修改...

Winform程序全部关闭代码(C#)【代码】

我们在写winform程序时,经常会使用在一个窗口中通过点击产生另外一个窗口,原来的窗口通过this.hide()代码而隐藏。紧接着可能我们直接关闭第二层窗口来结束程序,但是调试过程中会发现我们的程序并没有正常关闭,而是到了后台运行,这样的程序如果做出软件来使用,就会造成内存资源大量占用而产生浪费,下面的代码就是解决这一问题:/// <summary> /// 关闭程序 /// </summary> protected override void WndProc(ref Message m) {...

C# winform程序实现开机自启动,并且识别是开机启动还是双击启动

C# winform程序实现开机自启动,并且识别是开机启动还是双击启动https://www.cnblogs.com/hjsstudio/archive/2018/10/29/9863857.html 点赞 收藏分享文章举报qq_18932003发布了327 篇原创文章 · 获赞 1 · 访问量 4815私信 关注

C# Winform使用线程,委托定时更新界面UI控件,解决界面卡顿问题(转载)

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.SqlClient; using System.Drawing; using System.Linq; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Windows.Forms;namespace SampleNotice {public partial class Form1 : Form{public Form1(){InitializeCompone...

窗口 - 相关标签