C#: Возможно Вы этого не знали

Сегодня речь пойдет о некоторых интересных аспектах языка программирования C#, которые могут сильно помочь Вам, и о которых возможно Вы не знали. Некоторые описанные вещи, будут работать не только в языке C#, но еще и в некоторых других языках.


1) Цикл по всем элементам.

int[] Mas = { 0, 1, 2, 3 };
foreach (int i in Mas)
{
    MessageBox.Show(i.ToString()); //0, 1, 2 ...
}

2) Прочитать весь файл по строкам.

string data = String.Empty;
StreamReader sr = new StreamReader("file.txt");
while ((data = sr.ReadLine()) != null)
{
     MessageBox.Show(data);
}

3) Локальные переменные в цикле.

for (int i = 0, j = 0; i < 5; ++i, j += 2)
{
     MessageBox.Show(j.ToString()); //0 2 4 ...
}

4) Вторая форма записи оператора «if».

int a = 0;
int b;
if (a == 0)
{
   b = 1;
}
else
{
   b = 0;
}
////////
int c = 0;
int d = (c == 0 ? 1 : 0); //c = 1

5) Строка без двойных слешей.

string a = "folder1\\folder2\\folder3";
string b = @"folder1\folder2\folder3";
// (a == b) = true

6) Текст с новой строки в TextBox.

textBox.Text = "Line 1";
textBox.Text += "\r\n";
textBox.Text += "Line 2";

7) Вернуть в родительскую форму DialogResult.

private void button1_Click(object sender, EventArgs e)
{
     this.DialogResult = DialogResult.Yes;
     //При этом форма закроется
}

8 ) Смена значения bool на противоположное.

bool a = true;
a = !a; //false;

9) Работа с элементами формы в потоке.

void ThreadFunction()
{
   this.Invoke(new ThreadStart(delegate()
   {
     this.textBox.Text += "new Line\r\n";
   }));
   Thread.Sleep(1000);
}

10) Принудительный сбор мусора.

GC.Collect();
Запись опубликована в рубрике C# с метками , , . Добавьте в закладки постоянную ссылку.