Hallo
Du solltest dir durchlesen, was dir angeboten wird und danach bist du glücklicher. Der Link war ganz bewusst gewählt und nun versuchst du es noch einmal...
chrische
Unix-Tom schrieb:
... und das Bitmap wieder ausgeben.
Das Problem ist, dass ich es nicht zwischenspeichern kann, da mehrere auf das selbe Bild zugreifen!
Und die ImageMap-Klasse hat kein Member 'Image', sondern nur 'ImageUrl' :-(!
Wenn es ein Member 'Image' hätte, wäre es ja gar kein Problem, aber es wird eben nur eine URL verlangt!
Die Änderung des Bilds muss irgendwie temporär sein!
Danke trotzdem :-)!
Grüüße
Die einzige Möglichkeit Direct3D 9/10/XY UND .NET produktiv zu verwenden ist C++/CLI^^ Viel Spass bei dieser Kombination von zwei der komplexesten Angelegenheiten in der Geschichte der Softwareentwicklung
Hallo.
Ich experimentiere gerade mit C# und Netzwerk.
Ich habe ein Programm(C++), welches mir auf Aufforderung Daten über den Socket schickt.
Das funktioniert mir meinem alten C++ Programm ganz hevorragend.
Mit C# habe ich noch so meine Probleme und zwar kann ich kein CR und LF empfangen, diese Zeichen sind einfach weg und durch '\0' ersetzt!
Starte ich parallell dazu mein altes Programm, bekomme ich diese Zeichen.
Eie Antwort vom Programm sieht ungefähr so aus:
START\r
Nen Haufen Zeichen, Text usw der mit \r getrennt ist\r\n
ENDE\r
Wobei jede Zeile ein Telegramm entspricht.
Das Problem ist hier, daß ich mit C# die Zeichen \r und \n einfach nicht empfange!
Sie sind einfach nicht da, derweil empfange ich doch das Ganze schon als byte.
Hier der Quellcode:
//Connection aufbauen und abfragen
TcpClient socketForApp = new TcpClient(GlobalVars.AppHost,GlobalVars.AppPort);
socketForApp.SendTimeout = 1000;
socketForApp.ReceiveTimeout = 10000;
NetworkStream networkStream;
networkStream = socketForApp.GetStream();
..........
if (networkStream.DataAvailable)
{
networkStream.Read(rec, 0, GlobalVars.SOCKLEN);
ergebnis = System.Text.Encoding.ASCII.GetString(rec);
}
usw.
Wenn ich das Ding debugge, dann sehe ich schon in der Zeile
networkStream.Read(rec, 0, GlobalVars.SOCKLEN);
Daß in rec zwar die normalen Zeichen drinsteheln, aber KEIN *r*, an dieser Stelle steht stattdessen in \0 !!!
Ich habe schon versuche, das per Char zu empfangen->dasselbe.
Als byte-> dasselbe .
Als string -> sowieso.
Was gibts noch für Möglichkeiten?
Es liegt ja definitiv nicht an der Umwandlung in den string(
ergebnis = System.Text.Encoding.ASCII.GetString(rec);
)
sondern schon in der Zeile vorher.
Wenns nicht als Char geht, wie dann?
Hat wer Tips?
Ich brauche diese Zeichen für die spätere Verarbeitung..
Danke und Grüße Mondmann
Ich habe auch irgendwie das Gefühl, dass wenn ich im DataGridView eine komplette Row herauslösche, dass dies mit der DataTable nicht abgeglichen wird bzw. dass die Datensätze nicht endgültig aus der Tabelle verschwinden.
Kann jemand dazu was sagen?
Liebe Grüße
- Basti
schneidet die Linie die ecke, heißt es noch lange nicht dass alles was danach kommt außerhalb des Polygons liegt - die ecke kann ja auch nach oben zeigen und die linie also trotzdem in den poly eintreten...
Ich versuch mal das zu implementieren mit allen sonderfällen. Vllt wird es ja doch nicht so viel wie es zu sein scheint mit allen sonderfällen. Wenn dir was einfällt - immer bescheid sagen
Danke!
PS Mit dem füllen bist du schon auf der richtigen spur - das programm generiert steuerbewegungen für eine CNC-maschiene, es geht ums "Hatching"
Um alle Felder in einer Klasse auszugeben,würde ich Reflection benutzen:
void ShowAllProperties(object o)
{
Type type = o.GetType()
foreach(PropertyInfo pi in type.GetProperties())
{
object value = pi.GetValue(0,null);
Console.WriteLine("{0}: {1}",new object[]{pi.Name,value});
}
}
BTW: schlechter Name. Die Funktion sollte besser "IsEmptyDirectory" oder "IsDirectoryEmpty" heissen.
Ob "IsEmptyDirectory" oder "IsDirectoryEmpty" kommt drauf an was die Funktion machen soll.
"IsEmptyDirectory" würde für mich heissen die Funktion liefert einfach "false" zurück wenn der übergebene Pfad garkein Verzeichnis ist bzw. nicht existiert.
"IsDirectoryEmpty" würde ich die Funktion nennen wenn sie in dem Fall "übergebener Pfad ist kein Verzeichnis" eine Exception wirft.
Mehr Sinn wird wohl in den meisten Fällen Variante 1 machen, also "IsEmptyDirectory".
Andorxor schrieb:
Er hat doch gesagt das die Form die Werte nicht abholen soll.
Du kannst eine Variable für deine Form in deine Klasse packen und dann darauf zugreifen.
Das mag sein aber irgendwo muss er die Klasse aufrufen.
Selbst wenn er 100 Klassen hat muss er sich eben eine Einheitliche Schnitstelle dafür schreiben.
Den this übergeben ist keine gute Idee denn er trennt Daten nicht von GUI.
Er müsste dann jeder Klasse die Formklasse bekannt machen.
Wenn die Form Daten möchte dann soll sie sich diese auch holen.
Siehe MFC und DOC/VIEW.
In DOC werden die Daten abgelegt und in der View nur geholt,angezeigt bzw. verändert.
Weiters sagte ich es wäre eine Möglichkeit.
Besser ist es aber das Design zu überdenken und nicht jeder Klasse den this einer Form zu übergeben.
moehrle schrieb:
Nun muß ich mal sehen, wie man Objekte in Methoden übernimmt und verändern kann, daruaf zugreifen tut (Syntax usw.) Gibts da eine besondere Seite oder BSP ???
Ganz im Ernst, wie wär's, wenn du mal mit ein paar Tutorials für Anfänger, die Grundlagen durchgehst. Das hilft dir und uns.
So eine Anforderung wird normalerweise über die Datenbank Server und nicht im Programm abgebildet. Suche dafür z.B. nach Cluster, Loadbalancing oder Redundanz.