Hy@all,
ich suche nun seite geraumer Zeit mit Google vergebens nach einer Möglichkeit, wie ich beim Resize eines WPF-Window nur den Rahmen zeichnen lassen kann. Gibt es hier mit WPF schon Lösungen? Mir würde auch schon ein Stichwort reichen (denke das ich die ganze Zeit nach dem falschen Namen suche).
MfG
Tonka
Hey talla,
Das der GridSplitter nur fixe Höhen/Breiten einstellt habe ich mir schon gedacht.
Alternativ würd ich einfach in der unteren Zeile nen Expander nehmen den man auf und zuklappen kann statt die CheckBox. Wenn dann die Zeilenhöhe auf Auto ist, vergrößert und verkleinert die Höhe sich dann automatisch.
Der Vorschlag ist gut, jedoch kann ich es aus bestimmten Gründen hier leider nicht so machen.
Werd mich einmal damit beschäftigen ob es möglich ist den GridSplitter abzuleiten und eine Art reset einzubauen.
MfG
Tonka
Hy@all,
ich habe momentan ein Problem mit dem GridSplitter.
Ich habe ein Grid mit 3 Rows. In der ersten Ziele ist ein TreeView der immer eingeblendet ist. In der zweiten Zeile ist ein GridSplitter - der per default nicht sichtbar (collapsed) ist. In der dritten Zeile ist wieder ein Grid - Das ebenfalls per default ausgeblendet ist.
Nun zum Problem:
Wenn der User eine Checkbox aktiviert, werden Zeile 2 und 3 eingeblendet (mittels Binding). Der GridSplitter funktioniert und man kann die beiden UI-Element (Zeile 1 und 3) hin un her bewegen. Jedoch wenn man die Checkbox wieder deaktiviert und somit die Zeile 2 und 3 wieder Collapsed werden bleibt die Gridmanipulation leider aufrecht (siehe Bild). Ich habe jetzt schon vieles probiert, jedoch gelingt es mir nicht einen Reset der GridSpillters beim Ausblenden aufzurufen.
Kennt jemand von euch eine Lösung für dieses Problem???
MfG
Tonka
Hallo,
ich erstelle gerade mit VS2010 ein Setup. Es funktioniert alles prima, jedoch eine Sache bringe ich einfach (auch mit hilfe von google) nicht zusammen. Ich würde gerne meine Setup-Version automatisch in den Productnamen und in den Dateinamen setzten. War von VS bisher bei den meisten Dingen gewohnt, das man dafür ein Makro hat aller "[PRODUCTVERSION]".
Weiß jemand von euch, wie ich das mit VS-Mitteln bewerkstellingen kann?
MfG
Tonka
Hallo,
ich möchte einige Daten mit einem C#-Programm (WCF-Service) verschlüsselt in eine Datei schreiben. Am besten wäre eine XML-Datei. Soweit so gut, das hätte ich noch selbst zusammengebracht xD. Diese Datei müsste ich mit vc++, also unmanged ebenfalss wieder einlesen können.
Gibt es hier "Standardmittel" oder etwaiges?? Kenne mich leider in der Verschlüsselung nicht wirklich gut aus.
MfG
Tonka
Problem gelöst 😄
Man kann es so schreiben wie ich es von Anfang-an gemacht habe, jedoch muss die Klasse die man Draged als Serialisierbar markiert sein.
Danke für die Hilfe.
MfG
Tonka
dahingehend verstehe, dass du das dragging nur startest, wenn beide maustasten gehalten werden?
Das ist richtig. Die linke Maustaste brauch ich schon für was anderes. Wollte ursprünglich nur die rechte Maustaste dafür benutzten, jedoch funktioniert das scheinbar in WPF nicht!
Du müsstest also die Werte deiner Matrix mw in ein (2dim?)Array schreiben, das Array verschicken, und bei Empfang daraus eine neue Matrix instanzieren.
Die Matrix ist keine einfache Wertematrix, diese beinhaltet viele andere Matrizen und Referenzinformation => somit werd ich es mal mit einer Serialisierung versuchen.
MfG
und mir fällt auf, dass du mal "Matrix2D" benennst, mal "LightMatrix2D".
Mein Fehler, Matrix2D ist die Basisklasse - habs korrigiert, ändert aber nichts!
wie startest du denn das dragging?
private Point RightMouseButtonDownLastPosition;
private void UserControl_MouseMove(object sender, MouseEventArgs e)
{
if (!IsActive)
{
return;
}
if (e.LeftButton != MouseButtonState.Pressed || e.RightButton != MouseButtonState.Pressed )
{
return;
}
Vector diff = RightMouseButtonDownLastPosition - e.GetPosition(null);
if (Math.Abs(diff.X) > SystemParameters.MinimumHorizontalDragDistance &&
Math.Abs(diff.Y) > SystemParameters.MinimumVerticalDragDistance)
{
DataObject dragData = new DataObject(typeof(Matrix2D), Matrix);
DragDrop.DoDragDrop(this, dragData, DragDropEffects.Move);
}
}
private void UserControl_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
RightMouseButtonDownLastPosition = e.GetPosition(null);
}
MfG
Das habe ich mir auch schon gedacht. Das werde ich in den nächste Tagen einmal in einer Testapplikation testen.
Naja, bin mir nicht sicher ob mir das weiterhilft. Vielleicht muss ich das Object COM-fähig machen, damit ich das tun kann!?