Schau mal hier:
http://msdn.microsoft.com/en-us/library/kcx25hzz.aspx
it is not possible to create a single installer for multiple locales.
In order to create a localized installer, you set the Localization property of the deployment project to one of the supported languages (listed in the drop-down list in the Properties window). The Localization property setting determines the language for the default text displayed in the installation user interface dialogs during installation. You cannot see the translated text in the IDE; you can only see the translated text by building and running the installer.
Ich denke nicht das die Unterstützten Sprachen durch Installation eines Sprach pakets mehr werden.
ShowDialog bringt seine eigene Message-Schleife mit.
Du solltest jedoch alle GUI-Aufrufe nur im Hauptthread ausführen lassen.
Verwende dazu die Invoke bzw. BeginInvoke-Methode.
Hier ein passender Artikel dazu:
http://www.mycsharp.de/wbb2/thread.php?threadid=33113
als zusätzliche Erklärung s. a. http://www.mycsharp.de/wbb2/thread.php?threadid=27992
Oh mein Gott, wie peinlich. Aber da musste ich echt erstmal drauf kommen...
chk.Foreground = Brushes.White;
Die Zeile ist das Problem! Auf Win2008 R2, wo auch alle Visual Styles deaktiviert sind, setzt chk.Foreground nicht nur die Farbe des Textcontents, sondern auch die Farbe des Hakens -- und Weiß auf Weiß ist nunmal nicht wirklich gut sichtbar.
Hier muss ich explizit die Farbe des Label-Foregrounds setzen...
Jemand eine Idee wie ich das mache?
Gruß
PuerNoctis
So kenne ich es auch vom Borland C++ Builder (VCL). Und bei einem Programm, das ich nach C# konvertiert hatte, hat dies auch immer noch so funktioniert:
bitmap->Transparent = true;
->
bitmap.MakeTransparent();
Vielen Dank für die Antworten.
Dravere hatte recht. Das Problem war, dass ich in manchen Fällen von der Zufallszahl eine nicht definierte Zahl abgezogen hatte. Folglich war das Ergebnis ebenfalls nicht definiert.
Student83 schrieb:
Mhh, das ist natürlich schlecht. Wie könnte ich denn dann ein PreviewCanvas im PrintDialog verwirklichen?
Wieso überhaupt veränderst du in einer Preview das Objekt?
Ansonsten ist es schwer dir da Hilfe zu geben, ohne die genaueren Umstände zu kennen. Grundsätzlich kannst du probieren das Objekt zu kopieren, was ich allerdings für ziemlich umständlich halte, da man extrem aufpassen muss, dass nirgends eine flache Kopie passiert. Ansonsten, falls du nur den Schreibzugriff sperren willst, kannst du ein ReadOnly-Wrapper bauen oder einer der vorhandenen verwenden.
Grüssli
Firefighter schrieb:
Ist mir jetzt acuh zu blöde, wenn hier wieder alles bis ins Kleinste Detail ausgekackt wird, man man.
Du hast etwas gepostet was so nie passieren kann ... das Problem dabei - es kann sich weiter verbreiten ... vgl. "Application::DoEvents() ist immer gut wenn die Oberfläche blockt" ... gerade viele Anfänger greifen auf die einfachste Lösung zurück - welche durchaus die schlimmste Lösung sein kann ... und mit der Aussage Port-Scan und schon bist Du im Netzwerk ist falsch ... wobei - diese Aussage hätte man auch so stehen lassen können
Ad aCTa schrieb:
Nein, deine Theorie ist einfach sinnlos. Wenn nicht gerade irgendwo ein Bufferoverflow beim accept() zu finden ist (was bei .NET nicht passieren sollte), ist das auch sehr sicher. Ein DoS-Angriff legt die Anwendung lahm, mehr aber auch nicht.
unterhalb der .NET Ebene (also native) kann das durchaus passieren ... aber da liegt dann die Verantwortung wieder bei MS ... innerhalb des Frameworks (also rein CLR) sollte immer eine entsprechende Exception fliegen wann etwas nicht passt
SWW13 schrieb:
Geht doch ganz einfach, allerdings musst du dann selber angeben wo. Schau dir einfach die Überladungen der Show-Funktion an, damit solltest du dein Ziel erreichen.
ToolTip myTip = new ToolTip();
myTip.Show("Dein Text", Control);
edit:
Wenn du einen vorhanden ToolTip mit dessen Text aufrufen willst, muss ich dich enttäuschen. Du kannst ihn zwar auch verwenden, aber Text, etc. musst selber angeben.
MfG SWW13
das ist perfekt, genau was ich gesucht habe Danke!
Aber wieso verzieht es den ToolTip von Zeit zu Zeit? Also er bleibt nicht an der selben Stelle...?!
Die möglichkeit der Knotencustomisierung kommt mir sehr beschränkt vor. Idealerweise würde ich die Knotendarstellung selbst in die Hand nehmen (Ich glaube bei den Kanten ist es Ähnlich).
Ausserdem habe ich einige der wichtigen Features vergessen. Prinzipiell sollte man die Knoten auch frei Positionieren können. Das gleiche gilt für die Kanten (Man müsste also irgendwelche Connectionpoints setzen oder Ähnliches). Ich habe einige Brauchbare Bibliotheken bereits gefunden. Muss aber eine Gegenüberstellung machen. Ggf kennt noch jemand ein paar. Mir würden auch schon reine Layouting Bibliotheken helfen. Dafür würde sich aber schon wieder prinzipiell GraphVis eignen. Falls noch jemand vorschläge hat wäre ich über ein paar Links sehr Dankbar.
loks schrieb:
Das ist ein Fehlschluß, Stichwort: "manchmal". Wenn etwas manchmal läuft bedeutet es nicht, das es immer läuft. Könnte ebenso Zufall sein das es "manchmal" funktioniert...
Mh, d.h., du meinst, dass der Server "manchmal" einfach nicht genügend Verbindungen zur Verfügung stellen kann?
loks schrieb:
Vorraussetzung für eine Race-Condition ist, das alle drei Threads auf gemeinsame Resourcen zugreifen. Ist das der Fall? (lässt sich aus dem Minimalbeispiel nicht wirklich rauslesen).
Naja, die einzige gemeinsame Resource ist eigtl. die Netzwerkverbindung. Der Code enthält im Prinzip den kompletten Netzwerkcode, den ich verwende.
Kann das Problem nur am Server selbst liegen, oder auch an irgendeiner Einstellung beim Client?
Ich finde die Lösungen alle mehr oder weniger grauenhaft. Die "beste Lösung" ist IMO auf den "Expression-String" zu verzichten, und einfach Debug.Assert(condition) zu schreiben.
Debug.Assert(x != 0, "x != 0"); finde ich ziemlich grauenhaft (Wartbarkeit, Lesbarkeit).
Das nicht-vorhandensein von Makros in C# ist eine fast genauso schlimme Sache wie der Misbrauch von Makros in C und C++.
Andrerseits... für diverse Code-Refactoring/-Analyse Tools ist es natürlich toll dass es keine Makros gibt...
Smodls schrieb:
Hi!
Ich möchte Daten aus einem Java Applet entnehmen, welches Informationen aus dem Internet streamt.
Die Vorgehensweise dazu soll folgende sein: Mit einem Packet-Sniffer will ich die Daten, welche das Applet aus dem Netz erhält, abgreifen. Um diesen Ansatz einmal durchzuspielen habe ich mir den Microsoft Network Monitor besorgt und mir Packets des Java Applets angeschaut. Das hat alles ganz gut geklappt.
Das Problem ist nun, dass die Daten (logischerweise) nicht auf dem Präsentierteller ankommen, sondern alles was ich sehe lediglich ein wildes Durcheinander von Hexadezimalem Code und unleserlichen Text (ASCII) ist.
Meine Frage nun an euch: Wie kann ich diese Daten in die gewünschten, verwertbaren Informationen umwandeln? Der Source Code des Applets liegt überungs vor (einfach decompiled).
Stichwörter, welche die Suche auf Google und Co. erleichtern, würde ich auch sehr schätzen ;).
P.s.: Das ganze soll in C# passieren -> deshalb habe ich diesen Teilbereich des Forums gewählt.
Entweder du schreibst selber ein Packet Parser oder verwendest gleich Wireshark.
Hallo ich versuche jetzt schon seit Tagen das Zoomen in meiner Anwendung hinzubekommen. Leider vergebens. Und zwar habe ich einen ScrollViewer, in dem sich ein Canvas befindet. Das Zoomen soll sowohl mit den Scrollbars, als auch mit dem MouseWheel funktionieren. Außerdem soll auf die aktuelle Mouseposition gezoomt werden.
Mein Code:
public void Zoom(object sender, MouseWheelEventArgs e)
{
Point position = e.GetPosition(this);
if (e.Delta > 0)
m_dZoomFactor = ZOOMVALUE;
else
m_dZoomFactor = 1.0 / ZOOMVALUE;
double currentZoom = m_ScaleTransform.ScaleX * m_dZoomFactor;
m_ScaleTransform.ScaleX = currentZoom;
m_ScaleTransform.ScaleY = currentZoom;
}
void ScrollViewer_ScrollChanged(object sender, ScrollChangedEventArgs e)
{
ScrollViewer scrollViewer = sender as ScrollViewer;
Point actualCursorPosition = System.Windows.Input.Mouse.GetPosition(scrollViewer);
if (e.ExtentHeightChange != 0 || e.ExtentWidthChange != 0)
{
var offsetx = e.HorizontalOffset + actualCursorPosition.X;
var offsety = e.VerticalOffset + actualCursorPosition.Y;
var oldExtentWidth = e.ExtentWidth - e.ExtentWidthChange;
var oldExtentHeight = e.ExtentHeight - e.ExtentHeightChange;
offsetx = Math.Max(offsetx / oldExtentWidth * e.ExtentWidth - actualCursorPosition.X, 0);
offsety = Math.Max(offsety / oldExtentHeight * e.ExtentHeight - actualCursorPosition.Y, 0);
scrollViewer.ScrollToHorizontalOffset(offsetx);
scrollViewer.ScrollToVerticalOffset(offsety);
}
}
Das ganze Funktioniert schon recht gut, allerdings nur beim Hineinzoomen. Zoomt man herraus und die Scrollbars verschwinden, so gerät der Canvas aus dem Mousefokus, da der Scrollviewer den Canvas automatisch in der Mitte platziert. Jemand eine Idee wie man das ganze zum Laufen bringen könnte?
geeky schrieb:
oder lösch in deinem Projekt mal die Referenz "System" und füge sie anschließend wieder hinzu...
das hat leider nicht geholfen! Trotzdem danke
Hey ,
dein Lehrer hat dir doch eigentlich alles vorgekaut, da muss man nicht viel selber nachdenken. Was erwartest du eigentlich , dass wir hier dir den komplett fertigen Lösungsweg zeigen? Ein bisschen Eigeninitiative könnte man ruhig an den Tag legen, wenn man dann irgendwo nicht weiter kommt wird einen dann auch bestimmt einer helfen. Aber so ....das ist echt arm sorry!
Falls du selber aber dennoch mal noch was machen willst
kannst du dir diesen Source von den Plotter angucken, das hilft dir bestimmt weiter und bringt dich auf ein paar gute Ideen.
http://www.codeproject.com/KB/miscctrl/ExpressionPlotterControl.aspx
So dann viel Glück und ich wünsche dir dass dein Lehrer krank wird