Das erste was mir einfällt wäre ein Listview (View: LargeIcon) oder sowas in der Art.
Nur die ersten beiden? (ansonsten wäre Replace einfacher)
Du kannst mit dem Index ja andere Stringfunktionen füttern z.B. Remove (" " raus), Insert (";" rein) , Substring(zum selber zusammenbauen) usw.
Liegt deine CheckBox vielleicht in einer GroupBox, Panel oder sonstigem Parentcontrol das disabled ist?
Hallo Taggi,
Der Weg über Events ist schon der richtige.
Was du übersehen hast ist, das du allen deiner Elemente die geiche Funktion für die Events zuweisen kannst.
Beispiel
this.checkBox1.CheckedChanged += new System.EventHandler(this.ValueChanged);
this.textBox1.TextChanged += new System.EventHandler(this.ValueChanged);
this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.ValueChanged);
Das du immer nur den letzten Treffer angezeigt bekommst liegt daran das du deinen ergebnis-wert immer überschreibst.
Du könntest zum beispiel bei jedem schleifendurchlauf an den bereits bestehenden regebnis-string einen Zeilenumbruch und das nächste Ergebnis anhängen.
Oder wenn ich mich grade nicht täusche:
Du setzt die TextBox auf Multiline und weist der Lines-Eigenschaft einfach dein String-Array zu anstatt eines einzelnen Strings.
So wie du es machst bekommst du keine "einzelnen" Zeilen, das ist das Problem. Du kannst mir gern das Gegenteil beweisen!
na dafür hat man ja das Multiline
-> ^:::
"^[^#][^#]*$[^#]"
Mal dein Regex übersetzt:
Am Zeilenanfang steht ein Zeichen das ungleich # ist, danach stehen beliebig viele Zeichen die auch ungleich # sind, dann ist Zeilenende und danach steht wieder ein Zeichen das ungleich # ist.
Warum so umständlich?
W+rde es nicht reichen Beliebig viele Zeichen ungleich # zu haben? oder wenn du keine leeren Zeilen haben willst das machst du halt nicht beliebig viele sondern mehr als einen anderen quantor (z.B. +)
nicht #
[^#]*
und wenn du dich mit RegexOptions auskennst dürfte dir das hier ja bekannt vorkommen:
Multiline: Mehrzeilenmodus. Ändert die Bedeutung von ^ und $, sodass sie jeweils dem Anfang und Ende einer beliebigen Zeile und nicht nur dem Anfang und Ende der gesamten Zeichenfolge entsprechen.
das zusammenbauen überlass ich dir will ja nicht die Aufgabe komplett lösen 8)
Du willst das alles erlaubt ist außer # also was macht da ein . in deiner auswahl?
ansonsten schauts recht gut aus solltest dir mal RegexOptions anschaun vor allem das Multiline ist für dich interessant 😁
Denk mal nach:
Du hast die Startposition und die Endposition und du willst wissen wie lang der Teil dazwischen ist...