Hallo Hermes,
eine genaue 1:1-Entsprechung in C# gibt es nicht.
Aber wenn du nur einbittige (boolsche) Felder haben willst, dann kannst du einfach eine Enumeration mit FlagsAttribute erstellen:
[Flags]
enum Bits
{
Alarm1 = 1,
Alarm2 = 2,
Alarm3 = 4,
Alarm4 = 8
}
Mit Hilfe der bitweisen Operatoren (&, |) lassen sich dann die Flags setzen und abfragen, s.a. Bitoperationen in C#
Ansonsten gibt es auch noch die BitArray-Klasse: http://msdn.microsoft.com/de-de/library/system.collections.bitarray.aspx
Danke für die schnelle Antwort.
Ja, richtig. So werden neue Zeilen zur Laufzeit (im Quellcode) hinzugefügt.
Ich wollte aber die Anzahl der Zeilen im Eingenschaften-Fenster des DataGridView zur Entwurfszeit festlegen, ohne ohne sie im Quellcode erzeugen zu müssen.
Gruß
sonic
Vielen Dank!
Ich habe es jetzt mit der GetPixel() Methode gelöst.
Jetzt muss ich nur noch einbauen, dass ich mir die Farben in einem Quadrat oder Kreis um den Pixel herum auslese (Radius evtl. frei wählbar) und den Durchschnitt daraus errechne. 1 Pixel reicht nämlich leider nicht aus.
Quadrat/Kreis soll dann auch um die Maus herum gezeichnet werden - beim Klick auf das Bild.
Hallo,
ich möchte in einer WPFAnwendung gerne den Inhalt meines Controls drucken, welches Bilder und Texte enthält.
Ich hab das nun so gelöst, indem ich von meiner Anwendung ein Screenshot erstelle als "png" abspeicher und dieses dann im PrintPage-Event abrufe und ausdrucke.
Folgendes Problem habe ich: Beim ersten Ausdrucken wird meine Anwendung samt Fenstertitel etc. richtig ausgedruckt. Wenn ich die Anwendung maximiere und drucke, wird dieses Screenshot ohne Fenstertitel erstellt und ausgedruckt..
Wenn ich nun die Größe der Anwendung verkleiner und ausdrucke, dann wird der Content ausgedruckt allerdings sehe ich im Hintergrund noch das Screenshot des vorherigen Ausdrucks.
erklären konnte ich mir das, weil png mehrere Ebenen darstellen kann aber nach dem drucken lösche ich das screenshot und erstelle ein neues bzw eine neue datei mit dem screenshot..
kennt jemand das problem?
geeky schrieb:
Alles erst in eine Bitmap zeichnen und dann die Bitmap in einem Rutsch auf die Form zeichnen
QFT
Und falls dies nicht reicht, kann man noch OnPaintBackground überschreiben und dabei die Basismethode nicht aufrufen. Also grundsätzlich einfach nichts machen in der Methode.
Grüssli
Probier doch mal das Problem in einem neuen Projekt zu reproduzieren. Konzentrier dich nur auf diesen Teil und baue ihn sorgfältig nach (kein Copy&Paste!). Würde mich nicht erstaunen, wenn es irgendwo ein kleiner aber feiner Denkfehler ist, welcher sich eingeschlichen hat.
Grüssli
Morgen Leute,
Nachdem ein Hauptteil meiner App (Lernsoftware für Azubis "Fachkraft für Süßwarentechnik" nun mehr oder weniger fertiggestellt ist, möchte ich nun mit einem weiteren Teil anfangen.
Es geht nun darum dem Benutzer die Möglichkeit zu geben Fachaufsätze selbst zu verfassen, und durch das Programm auswerten zu lassen, soweit sich das eben realisieren lässt. Im Moment bin ich über die Idee noch nicht weiter hinaus, aber genügend Motivation ist vorhanden
Ich frage mich nun, wie ich das am sinnvollsten angehe. Eine Idee ist, das ganze als eine Art erweitertes Textverarbeitungspanel zu realisieren, so dass einzelne Gliederungen, Texte, Tabellen usw. via DragAndDrop auf dem Panel angeordnet und ausgefüllt werden können. Nur wie sollte ich dies später analysieren ?
Eine weitere Idee wäre ein vorgegebenes Blanko Formular, welches nur ausgefüllt werden muss. Allerdings wäre hier ja ein Teil des Lerneffektes verloren.
Vielleicht habt ja der eine oder andere von euch eine Idee, wie man soetwas realisieren könnte...
MFG
Servus,
eine Internetseite mit C#? Das haut nicht hin....
Das schreit förmlich nach ASP .Net. Das Werkzeug gleicht nur die Syntax ändert sich.
EDIT: Etwas blöd ausgedrückt. Die Sprache bleibt C# nur die zu verwendete Technik sollte ASP.Net sein.
EDIT2: Heute ist der Wurm drin... HIER gibts ein Buch. Ansonsten einfach ASP.Net in google eingeben.
gruß
Hellsgore
Hallo,
ich habe ein DataGridView dessen Spalten ich zur Laufzeit erzeuge.
Ist es möglich ein Bild/Icon in die Spalte, ganz links, einzufügen?
Diese Spalte ist bei mir grau/statisch.
Danke im Voraus
Danke für deine Hilfe, der Hinweis auf die Membervariablen hat mir schon sehr geholfen gehabt aber auch nach dem ich die verstanden hatte war mir das mit dem Referenzieren auf Controls/Typen noch nciht ganz klar. So leuchtet es aber ein
Vielen Dank.
MfG, µBx
Das Stichwort heißt "ContextMenu" bzw. "ContextMenuStrip".
Du kannst mit einfachen .NET-Mitteln aber nur das Kontextmenü komplett ersetzen (und dann die Menüeinträge selber erstellen: Cut, Copy, Paste, ...)
P.S. Benutzt du WinForms oder WPF?
Rhombicosidodecahedron schrieb:
Problem: diese Steuerelemente sind noch per Tab-taste erreichbar
Stimmt, aber das muss man wissen
Rhombicosidodecahedron schrieb:
und ein Grid ist da glaube ich zu overloaded im gegensatz zu Rectangle o.ä. (?).
Andere Controls gehen bestimmt auch
1. Das Control muss nur die Klicks fangen und auf Handled setzen (Das Rectangle macht das glaub ich nicht)
2. Wenn das Grid keine Rows und Columns zu Zeichnen hat, ist es nicht oversized, ist also zu vernachlässigen
Rhombicosidodecahedron schrieb:
Außerdem könnte man da gleich imMain-Grid einfach IsHitTestVisible = false setzen.
Ne das geht nicht, dieses Property wird nicht an die Childs weiter vererbt, und selbst wenn kann es schnell passieren das ein Control Style es wieder aktiviert und so das vom Parent überschreibt.
It0101 schrieb:
Beide Aufwände liegen im Bereich von 5-10min
Das verfassen der Frage und lesen der Antwort hat bestimmt länger gedauert ^^
//Mal eben schnell was zusammen hacken
<ContentControl Content="{Binding IsChecked, ElementName=box1}">
<ContentControl.ContentTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Ellipse x:Name="lamp" Fill="Red" Width="14" Height="14" />
<TextBlock Text="{Binding }" />
</StackPanel>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding }" Value="True">
<Setter TargetName="lamp" Property="Fill" Value="LightGreen" />
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</ContentControl.ContentTemplate>
</ContentControl>
Hat ~3 Min gedauert.
kelox schrieb:
Das Problem dort ist jedoch, dass das event erst gefeuert wird, wenn ich das Emulationsprogramm schließe bzw. den Stream per Close() schließe. Selbst bei einem Flush() des Streams wird das Change Event nicht ausgelöst. Hat jemand vielleicht jemand einen Tipp?
PS: Code des Emulationprogramm kommt noch.
Das ist ganz normal.
[quote="ERORRR"]Ok alles gelöst.
Ich habe einfache einen Verweis gelöscht und wieder hinzugefügt, und jetzt funktioniert alles wieder.
/quote]
Und das Verzeichnis gelöscht das dort gestanden hat das angeblich nicht gelöscht werden kann.
Falls es jemandem hilft.