ein paar fragen zu c#



  • hallo!

    ich arbeite nun seit geraumer zeit an einem projekt mit c# um diese programmiersprache besser kennenzulernen, bzw. deren klassenbibliothek kennen zu lernen... - nun denn, mein erstes projekt ist ein html-editor, zu welchem ich folgende fragen habe, da mir da noch irgendetwas fehlt...

    1. und zwar, wie kann ich einen text, den ein user markiert hat, von beliebigen zeichenfolgen quasi "umklammern"? z.b. der user markiert einen text, klickt auf h1 und außen rum kommt das h1 tag...

    2. wie kann ich den cursor zwischen zwei zeichenfolgen hineinstellen? z.b. der user klickt (ohne vorheriges markieren) auf h1 und der cursor erscheint so: <h1>|</h1> zwischen den tags?

    3. wie schafft man es, bzw. gibt es eine anleitung irgendwo dazu, den aktuellen cursorstand in der statuszeile auszugeben... (also von der x u. y. koordinate... -z.b. zeile: 10 spalte: 12)

    4. wie ist es am einfachsten, die gesamten zeilen des editors durchzunummerieren (wie bei diversen anderen editoren)...

    5. wie verwirkliche ich am besten Syntaxhighlighting bzw. vervollständigen diverser buchstabenreihenfolgen z.b. <h1> ... </h1>?

    danke für eure antworten...

    mlg



  • Hast du schon mal ein paar Tutorials zu WinForms durchgelesen?



  • nun, eigentlich bis jetzt nur das wesentliche aus der msdn library, da ich kein gutes (deutsches) tutorial dazu gefunden habe... - wären damit ein paar meiner probleme gelöst?



  • azok schrieb:

    nun, eigentlich bis jetzt nur das wesentliche aus der msdn library, da ich kein gutes (deutsches) tutorial dazu gefunden habe... - wären damit ein paar meiner probleme gelöst?

    Nein. Alle 😉



  • kennst irgend so ein gutes tutorial zu winforms?

    [btw: weißt du, wie die taste mit den < und > als key-command festlegen kann?]



  • Eine TextBox hat die Eigenschaften SelectionStart und SelectionLength, Text kann man über TextBox.Text.Insert(...) einfügen.





  • Noodles schrieb:

    Eine TextBox hat die Eigenschaften SelectionStart und SelectionLength, Text kann man über TextBox.Text.Insert(...) einfügen.

    das habe ich schon gewusst... - nur ist es mir (noch) nicht wirklich logisch, wie ich das verwenden soll, da ich - so absurd es klingen mag - mit der msdn hilfe zum thema TextBox.Text.Insert(...) nicht recht was anzufangen weiß...



  • azok schrieb:

    Noodles schrieb:

    Eine TextBox hat die Eigenschaften SelectionStart und SelectionLength, Text kann man über TextBox.Text.Insert(...) einfügen.

    das habe ich schon gewusst... - nur ist es mir (noch) nicht wirklich logisch, wie ich das verwenden soll, da ich - so absurd es klingen mag - mit der msdn hilfe zum thema TextBox.Text.Insert(...) nicht recht was anzufangen weiß...

    Dir ist schon klar, dass Insert eine Methode von string ist und nicht von TextBox?
    So schreibst du z.B. nen Satz in deine TextBox:

    textBox1.Text = "Ein Satz";
    

    Und so fügst du das Wort "kurzer" zwischen "Ein" und "Satz" ein:

    textBox1.Text = textBox1.Text.Insert(4, "kurzer ");
    


  • interpreter schrieb:

    Und so fügst du das Wort "kurzer" zwischen "Ein" und "Satz" ein:

    textBox1.Text = textBox1.Text.Insert(4, "kurzer ");
    

    jaja, das ist schon klar... - nur wie füge ich an dieser stelle z.b. den soeben selektierten text ein...?



  • textBox.SelectedText
    


  • Das steht alles in der MSDN
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemwindowsformstextboxmemberstopic.asp
    Solltest du dir vielleicht mal aufmerkam durchlesen 🙄



  • sry, dass ich schon wieder frage, aber ich habe das ganze nun folgendermaßen probiert:

    this.txtHauptfeld.Text = txtHauptfeld.SelectionStart + "<h1></h1>";
    this.txtHauptfeld.Text = txtHauptfeld.SelectionStart + txtHauptfeld.Text.Insert(4, txtHauptfeld.SelectedText);
    

    aber es funktioniert irgendwie nicht... bin schon fast am verzweifeln... - wo ist da mein denkfehler?



  • funktioniert irgendwie nicht ist keine ausreichende Fehlerbeschreibung!
    kleiner Tipp: für dein Problem gibt es 2 Stellen, wo du Text einfügen musst.



  • Schau Dir mal an, was SelectionStart zurückgibt und dann denk mal über die Parameter der Insertfunktion nach.



  • Optimizer schrieb:

    funktioniert irgendwie nicht

    ...ich steh wirklich auf der leitung, ich sitz wahrscheinlich auch drauf... - bei allem was ich probiere, es wird mir nie eine zeichenfolge nur eingefügt... - der text bleibt einfach markiert, also es passiert einfach nichts.



  • Noodles schrieb:

    Schau Dir mal an, was SelectionStart zurückgibt und dann denk mal über die Parameter der Insertfunktion nach.

    wenn ich wüsste, _wie_ ich mir anschauen kann, was SelectionStart zurückgibt wäre mir denk ich schon geholfen... (bin in c# leider noch nicht soo bewandert... )



  • azok schrieb:

    Noodles schrieb:

    Schau Dir mal an, was SelectionStart zurückgibt und dann denk mal über die Parameter der Insertfunktion nach.

    wenn ich wüsste, _wie_ ich mir anschauen kann, was SelectionStart zurückgibt wäre mir denk ich schon geholfen... (bin in c# leider noch nicht soo bewandert... )

    Ausprobieren? MSDN? Debugger?


Anmelden zum Antworten