tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
1061
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    min min ist offline Mitglied
    Registriert seit
    Dec 2010
    Beiträge
    19
    Hallo,
    Ich habe folgendes Problem. Ich lese aus einer Datei Pfadpunkte aus und versuche sie dann in meiner Silverlight Anwendung zu Rendern. Es sollen mehrere Male die gleichen Pfadpunkte benutzt werden, damit ein schönes Muster entsteht. Dafür habe ich die folgende Funktion erstellt.

    Code csharp:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    
            private void Renderer(PointCollection[] Ways, byte[,] flags, int[] flag)
            {
                SolidColorBrush color = new SolidColorBrush();
     
                for (int i = 6; i > 0; i--)
                {
                    Polyline line = new Polyline();
                    line.Points = Ways[5];
                    if (i/2 != (i+1)/2 )
                    {
                        color.Color = Colors.White;
                    }
                    else
                    {
                        color.Color = Colors.Black;
                    }
                    line.Stroke = color;
                    line.StrokeThickness = i;
                }
            }

    Beim ersten Mal durchlaufen der Schleife funktioniert alles prima. Beim zweiten Mal meckert er in der Zeile:
    Code csharp:
    1
    
                    line.Points = Ways[5];
    obwohl sich seit dem ersten Mal nichts verändert hat. Die Fehlermeldung lautet:
    System.ArgumentException was unhandled
    The parameter is incorrect.
    Kennt jemand dieses Verhalten, oder besser gesagt kennt jemand eine Lösung?
    Danke im Voraus.
     

  2. #2
    Avatar von Blackhawk50000
    Blackhawk50000 Blackhawk50000 ist offline Mitglied Brokat
    Registriert seit
    Oct 2007
    Ort
    Erding As, Bayern, Germany, Germany
    Beiträge
    328
    schau dir doch mal an, was zu diesem zeitpunkt in dem übergebenen zeugs drin steht und schau, ob du damit für dich selber logisch was anfangen kannst.

    wenn du daraus immernoch nicht schau wirst, poste doch mal hier, was du da eigentlich übergibts.
     

  3. #3
    min min ist offline Mitglied
    Registriert seit
    Dec 2010
    Beiträge
    19
    Das ist gerade das interessante, ich erkenne keinen Unterschied zwischen dem ersten Durchlaufen der Schleife und dem Zweiten.

    Speichert c# Beim zweiten mal die Variabel (aufgrund der gleichen Punkte) mit dem glichen Namen? Kann das der Grund sein?

    Edit: Hab's mal ausprobiert mit zwei ganz unabhängigen Polylines mit den gleichen Punkten. Da klappt es.
    Geändert von min (28.07.11 um 18:22 Uhr)
     

  4. #4
    min min ist offline Mitglied
    Registriert seit
    Dec 2010
    Beiträge
    19
    Ich konnte das Problem etwas vereinfachen. C# ist nicht zufrieden, wenn man die gleiche Pointcollection für zwei verschiedene Polylines verwendet. Somit sieht das Problem in Codeformat so aus:
    Code csharp:
    1
    2
    3
    4
    5
    6
    
    PointCollection A = new PointCollection();
    [...]
    Polyline A1 = new Polyline();
    Polyline A2 = new Polyline();
    A1.Points = A;
    A2.Points = A;

    Bei mir führt schon diese Konstellation zu einem Fehler, nämlich dem oben beschriebenen.
     

Ähnliche Themen

  1. Merkwürdiges verhalten bei Methodenaufruf?
    Von Smily0412 im Forum Java
    Antworten: 9
    Letzter Beitrag: 18.10.07, 14:23
  2. Merkwürdiges Verhalten
    Von mkoeni1 im Forum Hosting & Webserver
    Antworten: 1
    Letzter Beitrag: 29.08.07, 10:23
  3. Mod-Rewrite: merkwürdiges (?) Verhalten
    Von Layna im Forum Hosting & Webserver
    Antworten: 4
    Letzter Beitrag: 23.07.07, 15:27
  4. Merkwürdiges Verhalten von <img> und <?php
    Von FBI im Forum Coders Talk
    Antworten: 2
    Letzter Beitrag: 08.07.04, 12:32
  5. Merkwürdiges Verhalten von WIN2000
    Von Stormchild im Forum Microsoft Windows
    Antworten: 2
    Letzter Beitrag: 24.03.04, 12:00