C# Form TextBox 追記時に 一番したまでスクロール

C# TextBox AppendText 下まで自動スクロール

C# Form アプリの TextBox を Multiline に設定し

AppendText()で文字を追記する場合に自動で一番したまでスクロールさせる

タイマーを使って textBox1に追記するコード

private void Timer_Tick(object? sender, EventArgs e)
{
	try
	{
		switch (iCount)
		{
			case 0:
				textBox1.AppendText($"BIGIN {iCount}{Environment.NewLine}");
				break;
			case 9:
				textBox1.AppendText($"END LINE {iCount}{Environment.NewLine}");
				(sender as System.Windows.Forms.Timer).Stop();
				break;
			default:
				textBox1.AppendText($"{iCount}{Environment.NewLine}");
				break;
		}
		iCount++;
	}
	catch(Exception e1)
	{
		System.Diagnostics.Debug.WriteLine(e1.Message);
	}
}

VisibleChanged時に、 一番したまでスクロールさせるコード

//textBox1.VisibleChanged += TextBox1_VisibleChanged;
private void TextBox1_VisibleChanged(object? sender, EventArgs e)
{
	try
	{
		if (textBox1.Visible)
		{
			textBox1.SelectionStart = textBox1.TextLength;
			textBox1.ScrollToCaret();
		}
	}
	catch (Exception e1)
	{
		System.Diagnostics.Debug.WriteLine(e1.Message);
	}
}

C# dotnet ディレクトリ Path区切り文字¥かスラッシュかを判断

DirectorySeparatorChar

C# .NET 6 ( dotnet )で、 macOSWindows両方対応したコードを書く場合

ディレクトリのPath名が、 「¥」なのか「/」なのかを判断するための

静的フィールドが用意されています。

using System.IO;

char separator = Path.DirectorySeparatorChar;
Console.WriteLine("{0}", separator);

上記↑のコードを macOSで実行すると 結果は「/」です

macOSで実行すると 結果は「/」

Windowsでは「¥」が返ります。

その他のセパレーター

char altDirSeparator = Path.AltDirectorySeparatorChar;
Console.WriteLine("{0}", altDirSeparator);
char pathSeparator = Path.PathSeparator;
Console.WriteLine("{0}", pathSeparator);
char volumeSeparator = Path.VolumeSeparatorChar;
Console.WriteLine("{0}", volumeSeparator);
2022 MJELD TECHNOLOGIES. ALL RIGHTS RESERVED