Vielleicht hilft dir ja folgendes weiter:
Code von Form1:
public partial class Form1 : Form
{
// Instanz vom Logger in Form1
Form2 logger;
public Form1()
{
InitializeComponent();
}
//Initalisiert die Instanz zu Form 2 und zeigt diese an
private void button1_Click(object sender, EventArgs e)
{
logger = new Form2();
logger.Show();
}
//Setzt den Text "Meldungstext" auf Form2
private void button2_Click(object sender, EventArgs e)
{
string message = "Meldungstext";
logger.SetText(message);
}
}
Code von Form2:
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
internal void SetText(string message)
{
textBox1.Text = message;
}
}
Eigentlich kommt es nur darauf an das Form1 die Instanz von Form2 festhält und Form2 eine Methode bereitstellt um den Text zu setzten.
Dein Fehler ist das du immer eine neue Instanz vom Logger öffnest. new Logger solltest du also nur einmal aufrufen.
Den bereits geloggten Text kannst du ja zusätzlich in einer variablen speichern, Sodass mit Show die alten Einträge angezeigt werden.
Hi,
falls du es noch nicht rausgefunden hast...
So könnte es aussehen
static void Main(string[] args)
{
//Pfad, dessen Inhalt umbenannt werden soll
string path = @"C:\Ordner";
//Alle Dateien aus dem aktuellen Verzeichnis und aus Unterordner auslesen
//Searchpattern bsp.: "*" = Alle Dateien / "*.jpg" = Nur Dateien mit der Endung .jpg
var files = Directory.GetFiles(path, "*.jpg", SearchOption.AllDirectories);
foreach (var file in files)
{
FileInfo fileInfo = new FileInfo(file);
//Ordner der aktuellen Datei
string folder = Directory.GetParent(file).FullName;
//Da es im Standard kein File.Rename gibt...
File.Move(file, folder + "\\Präfix_" + fileInfo.Name.ToLower());
}
}