winform开发杂碎知识点

1、Form属性

起始位置:StartPosition

默认最大化:WindowState

最小尺寸:MinimumSize

是否父窗体:IsMdiContainer

ImeMode

图标:icon

 

2、Form事件

 

 

 

3、Location

元素相对父控件或父元素的位置

 1  this.panelLogin.BackColor = System.Drawing.Color.White;
 2             this.panelLogin.Controls.Add(this.btnCancel);
 3             this.panelLogin.Controls.Add(this.btnOK);
 4             this.panelLogin.Location = new System.Drawing.Point(415, 130);
 5             this.panelLogin.Name = "panel1";
 6             this.panelLogin.Size = new System.Drawing.Size(250, 200);
 7             this.panelLogin.BorderStyle = BorderStyle.Fixed3D;
 8             this.panelLogin.TabIndex = 5;
 9 
10 
11             this.btnCancel.Appearance.Font = new Font("Tahoma", 10f);
12             this.btnCancel.Appearance.Options.UseFont = true;
13             this.btnCancel.Location = new Point(140, 155); //相对父控件panel的位置
14             this.btnCancel.Name = "btnCancel";
15             this.btnCancel.Size = new Size(65, 25);
16             this.btnCancel.TabIndex = 29;
17             this.btnCancel.Text = "取消";
18             this.btnCancel.ToolTipController = this.toolTipCtrl;
19             this.btnCancel.Click += new EventHandler(this.HrMvemJgVa);
20 
21 
22 this.btnOK.Appearance.Font = new Font("Tahoma", 10f);
23             this.btnOK.Appearance.Options.UseFont = true;
24             this.btnOK.Location = new Point(50, 155);
25             this.btnOK.Name = "btnOK";
26             this.btnOK.Size = new Size(65, 25);
27             this.btnOK.TabIndex = 28;
28             this.btnOK.Text = "登录";
29             this.btnOK.ToolTipController = this.toolTipCtrl;
30             this.btnOK.Click += new EventHandler(this.btnOK_Click);

 

4、设计器文件不显示

从别地方拷贝来的代码,粘贴到代码目录下,右键项目-》添加-》现有项-》选择代码。这个时候可能设计器不显示了,需要手动调整下项目的csproj文件,按照以下模式处理好依赖关系。

<Compile Include="Tabbd.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Tabbd.Designer.cs">
<DependentUpon>Tabbd.cs</DependentUpon>
</Compile>

<EmbeddedResource Include="Tabbd.resx">

<DependentUpon>Tabbd.cs</DependentUpon>
</EmbeddedResource>

 

 注意:经过验证,添加现有项的时候只选择Form.cs文件,不要一起选择Designer.cs文件,最终窗体文件和设计器文件成功加载到vs工程,不用手动再调整csproj文件了!!!

 

5、[设计]界面报错,“文件中的类都不能进行设计,因此未能为该文件显示设计器。………………未能加载基类‘BaseForm’。请确保已引用该程序集并已生成所有项目。”

先右键生成或重新生成下项目,即可打开设计界面。

 

6、devexpress15.1破解及加入vs工具箱

1. 安装
点击DevExpressComponents-15.1.3.15167.exe

2.破解
管理员权限点击DevExpress.Patch.exe

3.加到工具箱
在左侧‘工具箱’的空白区域右键-》‘选择项’-》选择本机dev的安装目录下的dll文件即可。
View Code

 7、panelcontrol或groupcontrol的backcolor属性不起作用

The BackColor property is in effect in the following cases:

the BorderStyle property is set to NoBorder.
the PanelControl object is painted using a non-skinning painting scheme.

panel的BorderStyle 属性设置为 NoBorder,背景色才起作用。

 

8、设置TextBox高度

1.将TextBox设为多行模式,设置MutliLine属性为True,然后屏蔽Enter键
private void txtTest_KeyDown (object sender, KeyEventArgs e)
{   
if ((int)e.keyCode == 13)
  {     e.SuppressKeyPress
= true;
  }
} 2.在属性窗口改变字体大小,间接改变TextBox的高度 3.保持单行模式,设置AutoSize为false,再设置高度。AutoSize属性是被隐藏起来的,需要在代码里直接设置 xtlest.AutoSize = false; txtlest.Height = 18;

 9、背景设置

一般设置borderstyle=noborder,再设置背景色或图片才会生效

 

10、图片在panel中居中

设置noborder,然后将图片作为contentimage使用,即可居中显示图片。

 

11、label居中

 

autosize为false,docker为fill,textalign为middlecenter。

 12、ChartControl图表

设置每个柱体颜色不一样:
选中柱状图的series,在属性页面,设置view属性中的ColorEach为true即可实现。

取消柱体颜色默认渐变效果:
选中柱状图的series,在属性页面,设置view的fillmode为solid。
 

13、控件的层次布局

this.picturebox1.SendToBack();//将背景图片放到最下面
this.panel1.BringToFront();//将panel放在前面

 

14、图片自适应

1.
Panel中放入pictureBox1,设置图片的 Image , SizeMode 属性为 StretchImage 设置 pictureBox1 的 Anchor 为 Top, Bottom, Left, Right。

2.
使用tablelayoutpanel,设置其backgroundimage为图片,设置backgroundimagelayout为Stretch。

 

15、批量添加子控件(先将子控件批量放入数组,再一次性添加);

Control[10] coontrl = new Control[10];

Button b = new Button();

control.add(b);

Form.Controls.AddRange(control);

 

16、设置状态栏StatusStrip的内容居中

        statusStrip = new StatusStrip();
        toolStripStatusLabel = new ToolStripStatusLabel();
 
        // 设置Spring属性为true以使标签居中
        toolStripStatusLabel.Spring = true;
        toolStripStatusLabel.Text = "居中的状态栏内容";
        toolStripStatusLabel.TextAlign = ContentAlignment.MiddleRight; // 右对齐文本
 
        statusStrip.Items.Add(toolStripStatusLabel);
        this.Controls.Add(statusStrip);

 17、当前活动的控件(有焦点)

 Control con = this.ActiveControl;
 SysFile.WriteLog("当前活动的控件:"+con.Name);

 

posted @ 2024-05-10 21:26  love/coder  阅读(13)  评论(0编辑  收藏  举报