none
Methode zum austasuchen RRS feed

  • Frage

  • Hallo

    ICh wollte eine Methode schreiben die zbsp 2 zahlen austauschen kann oder auch den Inhalt von Textboxen/labels

    beispiel ich verlange 2 eingaben eingabe A : 2 eingabe B:3

    so wird ausgegeben (nach dem austasuch) eingabe A:3 eingabe B:2

    das gleiche will ich auch für textboxen und labels , deswegen string , aber bekomme immer den fehler das eine Eigenscahft ein Indexer etc. nicht als ref zurückgegeben werden kann

    mein Code

            public void tausch(ref string zahl1, ref string zahl2)
            {
    
                string a, b;
                a = zahl1;
                b = zahl2;
                zahl2 = a;
                zahl1 = b;
                        
    
            }
    
            private void bttauschen_Click(object sender, RoutedEventArgs e)
            {
    
             
                 tausch(ref tb_zahl1.Text,ref tb_zahl2.Text);
    
            }

    mfg

    Dienstag, 4. März 2014 16:01

Antworten

  • Hallo,
    zunächst ist es nicht möglich Eigenschaften als out oder ref-Parameter zu übergeben. Du musst es also die Label-Objekte selbst annehmen.
    Von deinem RoutedEventhandler und der Text-Eigenschaft gehe ich mal davon aus, das du TextBlöcke verwendest. In dem Fall kannst du das ref weg lassen, weil es sich um Klasseninstanzen handelt, die immer als ref(erenz) übergeben werden.
    public void tausch(TextBlock zahl1, TextBlock zahl2)
    {
        string c = zahl1.Text;
        zahl1.Text = zahl2.Text;
        zahl2.Text = c;//Ein wenig optimiert
    }
    
    private void bttauschen_Click(object sender, RoutedEventArgs e)
    {
        tausch(tb_zahl1, tb_zahl2);
    }


    Koopakiller [kuːpakɪllɐ] (Tom Lambert)
    Webseite | Code Beispiele | Facebook | Twitter | Snippets   C# ↔ VB.NET Konverter
    Markiert bitte beantwortende Posts als Antwort und bewertet Beiträge. Danke.

    • Als Antwort markiert Ephaltes Dienstag, 4. März 2014 16:32
    Dienstag, 4. März 2014 16:11
    Moderator