Windows Phone Programmierung

bLu3to0th

Commodore
Registriert
Juli 2010
Beiträge
4.473
Hallo,

ich hab jetzt mal nen paar allgemeine Fragen..
Ich habe gestern angefangen für WP7 App(s) zu programmieren und hatte mich für C# entschieden, da ich schon wenige Erfahrung in C++ habe und etwas mehr in PHP.

So, dann kam direkt die erste Hürde, ich wollte nämlich den Quelltext einer Webseite runterladen und die verbreiteste Funktion ging dafür direkt nämlich nicht.
Bei diesem Problem konnte mir jemand helfen und nun habe ich den Quelltext - diesen wiederrum wollte ich "exploden", aber auch hierfür hat C# keine richtige Funktion, nur "Split", aber Split kann nur einen einzigen Character dafür verwenden, was mir bei einem ganzen Quelltext natürlich recht herzlich weiterhilft.


Nun also zu meinen Fragen:
1. Ist C# überhaupt der richtige Ansatz für WP7 oder sollte man dann doch lieber versuchen den Krempel in Silverlight zu schreiben?
2. Wenn C# schon richtig ist, wie zum Geier kann ich dann nen String ordentlich zerlegen? Damit steht und fällt bei mir ALLES! (ich brauche: "bestimmte Strings suchen" und "mit einem längeren String exploden")
3. Je nachdem was nun besser, gibts nen brauchbares Buch für die Einführung? Ich weiß jetzt schon, dass ich wohl Probleme mit der grafischen Oberfläche kriegen werde.
 
mathias146 schrieb:
Code:
string myString="hello stop world";

string[] mySplittedString=myString.Split(new String[]{"stop"}, SplitStringOptions.None);
Und genau das geht NICHT.
Das ist genau das was ich meine.. das C# für WP scheint irgendwie abgespeckt zu sein -.-
Was soll ich mit ner abgespeckten Sprache, die in bestimmten Bereichen(Arbeiten mit Strings zB) eh schon sehr mager ausgestattet ist? :(
 
Es ist nicht die Sprache, die abgespeckt ist, es ist das .Net Framework, genauer gesagt: Das .Net Compact Framework 3.5 und teilweise modifiziertes Silverlight. ;)
Da ist vieles nicht drin, weil a) die Handyhardware nicht so leistungsfähig ist, ein hunderte MB großes Framework einigermaßen flüssig abzuarbeiten und b) bestimmte Methoden wie zB das synchrone Downloaden von Daten mit Absicht entfernt wurden. Damit sollen die Programmierer animiert werden, nicht zu schludern, weil sie gezwungen werden, bestimmte Paradigmen und Konzepte einzusetzen.

Schau dir mal Regex an, das wird vom WP7 unterstützt und damit sollte es recht einfach sein, ein Split nachzubauen.
 
bLu3to0th schrieb:
Hallo,

ich hab jetzt mal nen paar allgemeine Fragen..
Ich habe gestern angefangen für WP7 App(s) zu programmieren und hatte mich für C# entschieden, da ich schon wenige Erfahrung in C++ habe und etwas mehr in PHP.

Die beste Vorraussetzung um zu glauben, dass man dann C# "kann" ;)

bLu3to0th schrieb:
So, dann kam direkt die erste Hürde, ich wollte nämlich den Quelltext einer Webseite runterladen und die verbreiteste Funktion ging dafür direkt nämlich nicht.
Bei diesem Problem konnte mir jemand helfen und nun habe ich den Quelltext - diesen wiederrum wollte ich "exploden", aber auch hierfür hat C# keine richtige Funktion, nur "Split", aber Split kann nur einen einzigen Character dafür verwenden, was mir bei einem ganzen Quelltext natürlich recht herzlich weiterhilft.

Ich habe dir in dem anderen Thread schon geschrieben, dass du die falsche Framework-Dokumentation benutzt hast. Bzgl. Split hast du dir offensichtlich auch nicht die Mühe gemacht die Referenz zu lesen. Es gibt kein Split das nur einen einzigen Char nimmt.

bLu3to0th schrieb:
Nun also zu meinen Fragen:
1. Ist C# überhaupt der richtige Ansatz für WP7 oder sollte man dann doch lieber versuchen den Krempel in Silverlight zu schreiben?

In Silverlight schreibst du schonmal gar nichts.
C# ist eine Sprache, Silverlight ein Framework, um genau zu sein eine Untermenge von WPF. Du schreibst in C# und benutzt das Silverlight Framework. Nur eins von beiden geht nicht.

bLu3to0th schrieb:
2. Wenn C# schon richtig ist, wie zum Geier kann ich dann nen String ordentlich zerlegen? Damit steht und fällt bei mir ALLES! (ich brauche: "bestimmte Strings suchen" und "mit einem längeren String exploden")

String.Split und/oder Regex

bLu3to0th schrieb:
3. Je nachdem was nun besser, gibts nen brauchbares Buch für die Einführung? Ich weiß jetzt schon, dass ich wohl Probleme mit der grafischen Oberfläche kriegen werde.

Irgendein C# Einsteiger Tutorial wäre wohl das Beste. Wenn du das durch hast, kannst du dich allmählich an Silverlight einarbeiten. Auch hier empfehle ich dir erstmal ein paar Einsteiger Tutorials.


bLu3to0th schrieb:
Und genau das geht NICHT.
Das ist genau das was ich meine.. das C# für WP scheint irgendwie abgespeckt zu sein -.-
Was soll ich mit ner abgespeckten Sprache, die in bestimmten Bereichen(Arbeiten mit Strings zB) eh schon sehr mager ausgestattet ist? :(

Siehe oben. Es muss gehen.
Du kennst offensichtlich nicht den Unterschied zwischen einer Sprache und einem Framework. Du kannst mir auch nicht sagen, dass das nur bei dir nicht geht. Poste deinen Code, so dass man dir sagen kann, was du falsch machst.


Im Allgemeinen:
Wenn du auf MSDN liest, steht unten am Ende der Seite immer die unterstützte Plattform. Wenn da nicht explizit Windows Phone steht, bist du falsch. Hier ein Link zur vollständigen Klassen-Dokumentation.
 
holy schrieb:
Die beste Vorraussetzung um zu glauben, dass man dann C# "kann" ;)
Ich habe nie behauptet, dass ich es kann ;)
Ich habe aber die Vorraussetzungen um es zu lernen ;)

holy schrieb:
Ich habe dir in dem anderen Thread schon geschrieben, dass du die falsche Framework-Dokumentation benutzt hast. Bzgl. Split hast du dir offensichtlich auch nicht die Mühe gemacht die Referenz zu lesen. Es gibt kein Split das nur einen einzigen Char nimmt.
Diese Meldung kriege ich aber immer... also dass er einen String nicht für einen char nutzen kann... (code kann ich erst zu Hause nachliefern)

holy schrieb:
In Silverlight schreibst du schonmal gar nichts.
C# ist eine Sprache, Silverlight ein Framework, um genau zu sein eine Untermenge von WPF. Du schreibst in C# und benutzt das Silverlight Framework. Nur eins von beiden geht nicht.
Ah, ich dachte das Silverlight wäre nen extra Dialekt/Sprache da es so den Anschein macht in MVE WP7 2010.

holy schrieb:
Irgendein C# Einsteiger Tutorial wäre wohl das Beste. Wenn du das durch hast, kannst du dich allmählich an Silverlight einarbeiten. Auch hier empfehle ich dir erstmal ein paar Einsteiger Tutorials.
Ich habe mir die Englischen von channel 9 angeschaut(scheiß quali übrigens) allerdings ist die ganze Sache komplett auf Englisch natürlich sehr mühselig, daher würd ich mir ganz gerne ein Buch in deutsch holen.

holy schrieb:
Siehe oben. Es muss gehen.
Du kennst offensichtlich nicht den Unterschied zwischen einer Sprache und einem Framework. Du kannst mir auch nicht sagen, dass das nur bei dir nicht geht. Poste deinen Code, so dass man dir sagen kann, was du falsch machst.
wie oben gesagt, kann ich den code erst später nachliefern, da ich zz auf Arbeit bin.


holy schrieb:
Im Allgemeinen:
Wenn du auf MSDN liest, steht unten am Ende der Seite immer die unterstützte Plattform. Wenn da nicht explizit Windows Phone steht, bist du falsch. Hier ein Link zur vollständigen Klassen-Dokumentation.
Der Link sollte auf jeden Fall für die Zukunft schon mal hilfreich sein :)
 
Der code von mathias146 funktioniert fast, es heißt nur StringSplitOptions und nicht SplitStringOptions :P

Du kommst mit F1 in Visual Studio immer an den Punkt in der Dokumentation (die holy auch schon erwähnt hat) der zu dem ausgewählten Code passt. Das ist die beste Hilfe überhaupt. In dem Fall halt einfach myString.Split schreiben, mit der Maus auf Split gehen, F1 drücken und schon hast du alle Überladungen mit Beispielen.

Generell zu WP7: http://create.msdn.com/en-us/education/basics/developer_resources
http://msdn.microsoft.com/en-us/library/ff431744(v=vs.92).aspx
Wobei ich die Code Samples noch am hilfreichsten finde.

Der Grafische Editor ist genauso gut zu bedienen wie für Desktop Applikationen. Solangen du nicht groß mit Styles, Templates oder Bindings im größeren Stil rumhantierst sollte der auch reichen um alles schnell hinzukriegen.
 
Den Tipp mit F1 nehme ich mir zu Herzen(darauf hätte ich selbst mal kommen können
th_FacePalm.gif
)

Den erhaltenen Fehler kann ich,wie gesagt, leider gerade nicht kopieren.

Bei der Grafik sind meine derzeitigen Fragen eher: wie krieg ich unten dieses "..."-Menü hin und wie blende ich später bestimmte Dinge ein und aus ohne dass es beim Basteln megaunübersichtlich wird... bis dahin hab ich aber noch etwas Zeit^^
Ergänzung ()

So, nun kann ich den Code liefern:
Code:
string[] temp1;
            temp1 = dhlqc.Split(new string[] { '<td class="explorer">&nbsp;</td>' }, StringSplitOptions.None);

            for (int i = 0; i < temp1.Length; i++)
            {
                Console.WriteLine(temp1[i]);
            }
und auch die passenden Fehler dazu :D
  • Fehler 1 Zu viele Zeichen im Zeichenliteral.
  • Fehler 2 Eine implizite Konvertierung vom Typ "char" in "string" ist nicht möglich.
 
'x' ist ein Char.
"x" ist ein String.

Hau dir auf den Kopf!
 
e-Laurin schrieb:
-> "<td class=\"explorer\">&nbsp;</td>"
Wie gesagt, habs ja dann auch hinbekommen.. aber erstma darauf kommen, dass es da kein hartes und weiches "ausklammern" gibt...
Ergänzung ()

Ehm wie schreib ich mir ne Funktion mit 2 eingabe und einem Ausgabewert?
Genauso wie in PHP?

€dit: Hat sich erledigt, habs selbst hinbekommen... nu hab ich ne schöne Funktion, die mir Quelltextpassagen rausschnippelt :)
 
Zuletzt bearbeitet:
Zurück
Oben