首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > C#.NET > .NET开发中的一些小技巧
【标  题】:.NET开发中的一些小技巧
【关键字】:.NET
【来  源】:http://blog.csdn.net/zhangkunls/archive/2006/10/23/1347143.aspx

.NET开发中的一些小技巧

 

 

这篇文章来自是Mukund Pujari的《Some Cool Tips for .NET》。

1. 如何创建一个可改变大小没有标题栏的窗体?(How to create a form with resizing borders and no title bar?)

form1.Text = string. Empty;

form1.ControlBox = false;

2. 如何在.NET的Windows窗体上启用XP主题集?(How to use XP Themes with Windows Forms using the .NET?)

确认你的控件中FlatStyle属性已经修改为System,再修改Main方法。

static void Main()

{

Application.EnableVisualStyles();

Application.DoEvents();

Application. Run(new Form1());

}

3. 如何为一个窗体设置一个默认按钮?(How to set the default button for a form?)

form1.AcceptButton = button1;

4. 如何为一个窗体设置一个取消按钮?(How to set the Cancel button for a form?)

form1.CancelButton = button1;

5. 如何阻止一个窗体标题显示在任务栏上?(How to prevent a form from being shown in the taskbar?)

设置窗体的ShowIntaskbar属性为False

6. 如何用现有可用字体绑定到ComboBox控件?(How to fill a ComboBox with the available fonts?)

comboBox1.Items.AddRange (FontFamily.Families);

7. 如何禁止TextBox控件默认的邮件菜单?(How to disable the default ContextMenu of a TextBox?)

textBox1.ContextMenu = new ContextMenu ();

8. 如何获取“我的文档”等一些系统文件夹路径?(How to get the path for "My Documents" and other system folders?)

Environment.SpecialFolder中包含了一些系统文件夹信息

MessageBox.Show(Environment.GetFolderPath( Environment.SpecialFolder.Personal ));

9. 如何获取应用程序当前执行的路径?(How to get the path to my running EXE?)

string appPath = Application.ExecutablePath;

10. 如何确定当前运行的系统?(How to determine which operating system is running?)

OperatingSystem os = Environment.OSVersion;

MessageBox.Show(os.Version.ToString());

MessageBox.Show(os.Platform.ToString());

11. 如何从完整的路径中获取文件名?(How to get a file's name from the complete path string?)

用System.IO.Path.GetFileName 和 System.IO.Path.GetFileNameWithoutExtension(无扩展名)的方法

12. 如何从完整的路径中获取文件扩展名?(How to get a file's extension from the complete path string?)

用System.IO.Path.GetExtension方法

13. 如何使没有选择日期的DateTimePicker控件为空文本?(How to make the DateTimePicker show empty text if no date is selected?)

dateTimePicker1.CustomFormat = " ";

dateTimePicker1.Format = DateTimePickerFormat.Custom;

14. 如何在Report Viewer中隐藏Crystal Report的状态栏?(How to hide the status bar of Crystal Report in Report Viewer?)

foreach(object obj in this.crystalReportViewer1.Controls)

{     

if( obj.GetType()== typeof(System.Windows.Forms.StatusBar))

{     

StatusBar sBar=(StatusBar)obj;

sBar.Visible=false;

}     

}

15. 如何利用Crystal Report程序来生成PDF版本?(How to generate PDF version of Crystal Report programmatically?)

ReportDocument O_Report=new ReportDocument();

ExportOptions exportOpts = new ExportOptions();

PdfRtfWordFormatOptions pdfFormatOpts = new PdfRtfWordFormatOptions ();

DiskFileDestinationOptions diskOpts = new DiskFileDestinationOptions();

exportOpts = O_Report.ExportOptions;

// 设置PDF格式   

exportOpts.ExportFormatType = ExportFormatType.PortableDocFormat;

exportOpts.FormatOptions = pdfFormatOpts;

// 设置文件选项和导出

exportOpts.ExportDestinationType = ExportDestinationType.DiskFile;

diskOpts.DiskFileName = "C://Trial.pdf"; //设置PDF导出路径    

exportOpts.DestinationOptions = diskOpts;

O_Report.Export ();

16.通过代码如何输入多行文本?(How to enter multiline text in textbox through code? )

利用TextBox控件的LINES属性

string [] strAddress = {"Mukund Pujari","Global Transformation Technologies","Pune, India"};

textBox1.MultiLine=true;

textBox1.Lines=strAddress;

或者 textBox1.Text="Line 1\r\nLine2\r\nLine3.";

或者 用"System.Environment.NewLine"来替代换行符号

17. 如何在DataGrid中去掉CheckBox不确定状态?(How to remove the indeterminate status of checkbox in datagrid?)

DataGridTableStyle ts1 = new DataGridTableStyle(); //创建Table样式

ts1.MappingName = "Items"; //分配要应用样式的Data Table

DataGridColumnStyle boolCol = new DataGridBoolColumn(); // 创建CheckBox列

boolCol.MappingName = "ch"; //分配数据列名称

boolCol.AllowNull=false; // 修改AllowNull属性

18. 如何在用一个数据源DataTable绑定两个控件,确保变化不反映在两个控件中?( How to bind two controls to the same DataTable without having changes in one control also change the other control?)

我们在一个Form中放置一个ListBox和一个ComboBox控件,当数据源是一个DataTable而且绑定的ValueMember一致的时候我们选择ListBox中的一个Item时,ComboBox控件中的相同的Item也会被自动选中,我们可以采取建立新的上下文绑定对象来拒绝这样的同步操作

comboBox1.DataSource = dataset.Tables[ "Items" ];

comboBox1.ValueMember = "CustomerID";

comboBox1.DisplayMember = "CustomerID";

listBox1.BindingContext = new BindingContext(); // 设置新的上下文绑定对象

listBox1.DataSource = dataset.Tables[ "Items" ];

listBox1.ValueMember = "CustomerID";

listBox1.DisplayMember = "CustomerID";

19. 一个简单的创建链接字符串的方法。(An easy way to build connection string.)

记事本创建一个New.udl的文件,一个Microsoft 数据链接文件

双击打开,熟悉吧

按照向导创建完成一个数据库链接,测试成功

确定后,链接字符串写入这个文件,用记事本打开就看到了

20. 如何打开客户端E-Mail程序,Windows应用和Web应用?( How to open default E-mail client on your system with all parameters entered in it,like Outlook Express or Eudora, from your .NET windows or Web Application? )

Web Application:

A href="mailto:email@address1.com,email@address2.com?cc=email@address3.com&Subject=Hello&body=Happy New Year"

Windows Application:

引用System.Diagnostics.Process 命名空间

Process process = new Process();

process.StartInfo.FileName = "mailto:email@address1.com,email@address2.com?subject=Hello&cc=email@address3.com

&bcc=email@address4.com&body=Happy New Year" ;

process.Start();

21. VB.NET和C#有什么不同?( What is difference beween VB.NET and C#.NET? )

去微软下载一个文档吧,http://download.microsoft.com/download/6/3/5/6354bf47-c597-4029-89e9-2495e7539ab9/vbcsharpwp.exe

22. How to find whether your system has mouse or the number of buttons, whether it has wheel, or whether the mouse buttons are swapped or size of your monitor and many such information?

23. 如何使Windows Form上的Panel或者Label控件半透明?(How to make a Panel or Label semi-transparent on a Windows Form? )

通过设置控件背景色的alpha值

panel1.BackColor = Color.FromArgb(65, 204, 212, 230);

注意:在设计时手动输入这些值,不要用颜色选取

24. C#程序的主函数写[STA Thread] 属性是什么目的?(What is the purpose of the [STA Thread] attribute for the Main method of a C# program? )

http://community.csdn.net/Expert/topic/4132/4132313.xml?temp=.2285272

25. 如何触发Button的Click事件?(How to trigger a button click event? )

button1.PerformClick();

原文:http://blog.csdn.net/veryhappy/archive/2006/01/23/587196.aspx 
 
多列的DropDownList的实现:【上一篇】
Certmgr.exe逆向之三实际反汇编wmain():【下一篇】
【相关文章】
  • ADO.NET 2.0 Dataset和Datatable 新功能新特性
  • ASP .NET 2.0 学习笔记--(一):数据库的简单绑定
  • .NET的诡异现象 - DataSet无法正确访问带有返回值的存储过程
  • 从Atlas到Microsoft ASP.NET AJAX(9) - Using the Value-add Scripts
  • 《Visual Studio.NET Tips and Tricks》第二章的翻译
  • 在虚拟主机上部署ASP.NET AJAX 1.0 Beta的程序集
  • ADO.NET 2.0 - 如何建立一个 DataView
  • .NET设计模式(19):观察者模式(Observer Pattern)
  • DotLucene源码浅读笔记(2) : Lucene.Net.Documents
  • ASP.NET中数据库数据导入Excel并打印
  • 【随机文章】
  • 建立檢查使用者Quota的網頁
  • Progamming style guidelines
  • GHOST异常情况分析
  • 信息系统建模方法
  • 2月份《程序员》杂志之10佳技术Blog
  • 光驱内无盘不能出仓故障处理
  • 对于为OBSD捐款的事的回应
  • IT排名网 WAP/Mobile 专题 1
  • 用abap实现内表的行列转换
  • 《传奇》1.75版法师练级新去处
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.