c#常见操作

1. StreamWriter - 文件写入类
StreamWriter s = new StreamWriter(address + "/Menu.ini", true);
s.WriteLine(openFileDialog1.FileName);
s.Flush();
s.Close();

2. StreamReader - 文件读取类
StreamReader sr = new StreamReader(address + "/Menu.ini");
while (sr.Peek()>=0)
{
string str = sr.ReadLine();
}
sr.Close();

3. Image - 图像类
Image p = Image.FromFile("/背景图片.jpg");
Form f = new Form(); // 创建MID窗口
f.MdiParent = this; // 设置父窗口
f.BackgroundImage = p; // 设置MDI窗口的背景图
f.Show(); // 显示MDI窗口

4. Bitmap - 位图类
// 创建位图, Bitmap类继承于Image类
Bitmap bit;
bit = new Bitmap("heart.bmp");
bit.MakeTransparent(Color.White); // 设置透明色

protected override void OnPaint(PaintEventArgs e)
{
// 在窗口上画图
e.Graphics.DrawImage((Image)bit, new Point(0, 0));
}

5. this.Opacity - 控件的不透明度
// 控制控件透明程度,很有用。

6. C#中导入Dll文件中的API
[System.Runtime.InteropServices.DllImportAttribute("user32.dll")]
public static extern bool FlashWindow(IntPtr handle, bool bInvert);

7. 隐藏标题栏
this.ControlBox = false;

8. 窗口始终处于最上面
this.TopMost = ture;

9. Screen - 桌面类
Screen.PrimaryScreen.WorkingArea.Height // 桌面的高
Screen.PrimaryScreen.WorkingArea.Width // 桌面的宽
Screen.PrimaryScreen.BitsPerPixel // 桌面的位深

10. 基本绘图
Graphics graphics;
Pen myPen = new Pen(Color.Blue, 2);

// 画线
graphics = this.CreateGraphics();
graphics.DrawLine(myPen, 30, 60, 150, 60);

// 画矩形
graphics = this.CreateGraphics();
graphics.DrawRectangle(myPen, 30, 80, 120, 50);

// 画椭圆
graphics = this.CreateGraphics();
Rectangle myRectangle = new Rectangle(160, 70, 100, 60);
graphics.DrawEllipse(myPen, myRectangle);

11. 获得鼠标在窗口中的坐标
Cursor.Clip = new Rectangle(this.Location, this.Size);
label1.Text = "当前鼠标的位置为:" + Cursor.Position;

12. 判断键盘
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
const int WM_KEYDOWN = 0x100;
const int WM_SYSKEYDOWN = 0x104;
string strInfo = string.Empty;
if ((msg.Msg == WM_KEYDOWN) || (msg.Msg == WM_SYSKEYDOWN))
{
switch (keyData)
{
case Keys.Down:
strInfo = "Down Key";
break;
case Keys.Up:
strInfo = "Up Key";
break;
case Keys.Left:
strInfo = "Left Key";
break;
case Keys.Right:
strInfo = "Right Key";
break;
case Keys.Home:
strInfo = "Home Key";
break;
case Keys.End:
strInfo = "End Key";
break;
}
MessageBox.Show(strInfo, "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
return base.ProcessCmdKey(ref msg, keyData);
}

13. 控制远程计算机
//首先添加对 System.Management的引用
private void CloseComputer(string strname,string strpwd,string ip,string doinfo)
{
ConnectionOptions op = new ConnectionOptions ( ) ;
op.Username =strname;//‘‘或者你的帐号(注意要有管理员的权限)
op.Password = strpwd; //‘‘你的密码
ManagementScope scope = new ManagementScope("////" + ip + "//root//cimv2:Win32_Service", op);
try
{
scope.Connect ( ) ;
System.Management.ObjectQuery oq = new System.Management.ObjectQuery ( "SELECT * FROM Win32_OperatingSystem" ) ;
ManagementObjectSearcher query1 = new ManagementObjectSearcher (scope,oq) ;
//得到WMI控制
ManagementObjectCollection queryCollection1 = query1.Get ( ) ;
foreach ( ManagementObject mobj in queryCollection1 )
{
string [ ] str= {""} ;
mobj.InvokeMethod(doinfo, str);
}
MessageBox.Show("操作成功");
}
catch(Exception ey)
{
MessageBox.Show(ey.Message);
//this.button1.PerformClick();
}
}

// 重启远程计算机
CloseComputer(this.textBox2.Text, this.textBox3.Text, this.textBox1.Text, "Reboot");

// 关闭远程计算机
CloseComputer(this.textBox2.Text, this.textBox3.Text, this.textBox1.Text, "Shutdown");

14. ping的使用
Ping PingInfo = new Ping();
PingOptions PingOpt = new PingOptions();
PingOpt.DontFragment = true;
string myInfo = "hyworkhyworkhyworkhyworkhyworkhywork";
byte[] bufferInfo = Encoding.ASCII.GetBytes(myInfo);
int TimeOut = 120;
PingReply reply = PingInfo.Send(this.textBox1.Text, TimeOut, bufferInfo, PingOpt);
if (reply.Status == IPStatus.Success)
{
this.textBox2.Text = reply.RoundtripTime.ToString();
this.textBox3.Text = reply.Options.Ttl.ToString();
this.textBox4.Text = (reply.Options.DontFragment ? "发生分段" : "没有发生分段");
this.textBox5.Text = reply.Buffer.Length.ToString();
}
else
{
MessageBox.Show("无法Ping通");
}

15. 检查文件是否存在
public int CheckFileExit(string ObjFilePath)
{
if (File.Exists(ObjFilePath))
return 0;
else
return -1;
}

时间: 2024-10-01 06:19:55

c#常见操作的相关文章

C#路径/文件/目录/I/O常见操作汇总

文件操作是程序中非常基础和重要的内容,而路径.文件.目录以及I/O都是在进行文件操作时的常见主题,这里想把这些常见的问题作个总结,对于每个问题,尽量提供一些解决方案,即使没有你想要的答案,也希望能提供给你一点有益的思路,如果你有好的建议,恳请能够留言,使这些内容更加完善. 主要内容:一.路径的相关操作, 如判断路径是否合法,路径类型,路径的特定部分,合并路径,系统文件夹路径等内容:二.相关通用文件对话框,这些对话框可以帮助我们操作文件系统中的文件和目录:三.文件.目录.驱动器的操作,如获取它们的

【代码学习】MYSQL数据库的常见操作

============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与关闭 -h:指定所连接的服务器位置 -u:数据库的用户名 -p:数据库的密码 1 mysql -u 用户名 -p //连接数据库 2 密码 3 exit //关闭数据库 1 mysql_connect($host,$user,$password); //连接数据库 2 mysql_close() //关闭数据库 二.创建数据

杂【第一天】包括eclipse常见操作,程序调试模式

观看传智播客视频笔记,感谢 eclipse的常见操作: 1.当即热版本低于编译器版本是,会出现bad Vresion number in class file的错误: 2.快捷键: alt+/:模板键 ctrl+1:快速修复 ctrl+shift+o:导包 设置代码阿保存的时候自动格式化:windows->首选项->Java->Editor->save Actions 代码移动:alt+上下键 重置视图:window->reset perspective... 3.典型的字节

[java学习笔记]java语言基础概述之数组的定义&常见操作(遍历、排序、查找)&二维数组

1.数组基础 1.什么是数组:           同一类型数据的集合,就是一个容器. 2.数组的好处:           可以自动为数组中的元素从零开始编号,方便操作这些数据. 3.格式:  (一旦创建,必须明确长度)          格式1:              元素类型   [ ]  数组名  =  new  元素类型  [元素个数即数组的长度]:              示例:int[] array = new int[5];          格式2:           

ArcGIS for Android地图控件的5大常见操作

原文地址: ArcGIS for Android地图控件的5大常见操作 - ArcGIS_Mobile的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/arcgis_mobile/article/details/7801467   GIS的开发中,什么时候都少不了地图操作.ArcGIS for Android中,地图组件就是MapView,MapView是基于Android中ViewGroup的一个类(参考),也是ArcGIS Runtime SDK for

动态单链表的传统存储方式和10种常见操作-C语言实现

顺序线性表的优点:方便存取(随机的),特点是物理位置和逻辑为主都是连续的(相邻).但是也有不足,比如:前面的插入和删除算法,需要移动大量元素,浪费时间,那么链式线性表 (简称链表) 就能解决这个问题. 一般链表的存储方法 一组物理位置任意的存储单元来存放线性表的数据元素,当然物理位置可以连续,也可以不连续,或者离散的分配到内存中的任意位置上都是可以的.故链表的逻辑顺序和物理顺序不一定一样. 因为,链表的逻辑关系和物理关系没有必然联系,那么表示数据元素之间的逻辑映象就要使用指针,每一个存储数据元素

java实现二叉树的常见操作

本文转自:红客联盟 解释:程序调用自身的编程技巧叫做递归. 程序调用自身的编程技巧称为递归( recursion).递归做为一种算法在程序设计语言中广泛应用. 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量.递归的能力在于用有限的语句来定义对象的无限集合. 递归的三个条件: 边界条件 递归前进段 递归返回段 当边界条件不

数组常见操作_使用字母打印正三角形

数组常见操作: 使用字母打印正三角形 public class fifty { public static void main(String[] args) { char[] c = {'A','B','C','D','E','F','G'}; //要打印的行数 for(int i = 0;i<c.length; i++){ //打印每一行空格 for(int j = i; j<c.length-1; j++){ System.out.print(" "); } //打印每

MFC各种控件的常见操作(逐步添加中......)

由于经常切换系统或界面框架进行编程,难免有时会忘记之前的编程函数等等.所有在此自己做一个备份,以防止重新充电带来的痛苦! 1.CButton 1.1 在VC中编程实现按钮的启用(enable)和禁用(disable) 1.1.1 方式1:在对控件添加变量以后 m_btnQuit.EnableWindow(FALSE); //禁用按钮 m_btnQuit.EnableWindow(TRUE); //启用按钮 m_btnQuit.EnableWindow(FALSE); //禁用按钮 m_btnQu

Git分支管理及常见操作

众所周知,使用Git分支,我们可以从开发主线上分离开来,然后在不影响主线的同时继续工作. 既然要使用Git分支,这里就涉及到Git分支的管理及常见操作,如列出分支,分支的创建,分支的删除,分支的合并等操作. 以前看到这就头痛,总是搞不明白,今天研究了许久才搞懂,这里做个笔记. 如,我的Git工具安装在E盘>myGit中,安装后目录如下: 我本地创建的仓库为myProject,首先我们可以先查看下本地仓库的分支情况.打开Git工具,操作如下. [email protected] MINGW64 ~