) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO
Những mẹo cần biết khi lập trình NET
Chúng tôi xin đưa ra các phương pháp giải quyết các vấn đề mà các nhà phát triển .NET thường gặp. Hy vọng chúng sẽ giúp ích cho các bạn.
1. Làm thế nào giới hạn một chương trình chỉ chạy một lần Trong form chính đổi thành như sau:
static void Main() {
Process ThisProcess = Process.GetCurrentProcess();
Process [] AllProcesses = Process.GetProcessesByName(ThisProcess.ProcessName); if (AllProcesses.Length > 1)
{
MessageBox.Show(ThisProcess.ProcessName + '' is already running'',
ThisProcess.ProcessName, MessageBoxButtons.OK, MessageBoxIcon.Error); } else { Application.Run(new MainForm()); } }
2. Di chuyển con trỏ đến dòng và cột xác định (RichTextBox) Dùng phương thức GoToLineAndColumn
public void GoToLineAndColumn(int Line, int Column) {
Cursor.Current = Cursors.WaitCursor; int Offset = 0;
int i = 0;
foreach (String L in Lines) { if (i < Line - 1) { Offset += L.Length + 1; } else { break; } i++; } Select(Offset + Column - 1, 0);
Cursor.Current = Cursors.Arrow; }
3.Xác định cột hiện thời. (RichTextBox ) public int GetColumn()
{
int LineNumber = GetLineFromCharIndex(SelectionStart); int LineOffset = 0;
int i = 0;
foreach (String Line in Lines) { if (i < LineNumber) { LineOffset += Line.Length + 1; } else { break; } i++; }
return SelectionStart - LineOffset + 1; }
3. Chạy JScript.NET trong ứng dụng C#
Tạo một JScript.NET ''package'' bao gồm một phương thức toàn cục (public) package JScript
{
class Eval {
public function DoEval(expr : String) : String {
return eval(expr); }
} }
try { Result = (int) Application.UserAppDataRegistry.GetValue(''Resolution''); } catch(Exception) { } Và thêm một reference đến chương trình C# của bạn và sử dụng
JScript.Eval E = new JScript.Eval();
String Expression = ExpressionTextBox.Text; try
{
ResultTextBox.Text = E.DoEval(Expression); }
catch(Microsoft.JScript.JScriptException jse)
4.Lưu thông số cấu hình vào Registry
Đầu tiên vào AssemblyInfo.cs và bỏ tất cả các thông số từ AssemblyVersion: [assembly: AssemblyVersion(''1.0.0.0'')]
Application.UserAppDataRegistry.SetValue(''Value'', Value); Nạp lại các thông số :
try {
Value = (int) Application.UserAppDataRegistry.GetValue(''Value''); }
catch(Exception) {
}