Hi,
der arme User, das wären dann ja 1000 Zeilen pro Sekunde.
Oder willst du nur in eine Datei schreiben, denn dann benötigst du ja die TextBox nicht. Dann einfach die Datei per Append (einmalig) öffnen und reinschreiben.
Hi,
Expression.Call mit Parametern: Expression.Call-Methode (Expression, MethodInfo, Expression[]) (und es gibt noch einige weitere Überladungen davon)
Die Abfrage müßte dann wohl
SELECT ..., DATEDIV(year,GETDATE(), Geburtsdatum) AS Alter
FROM ...
lauten.
Hinweise
Die Image-Eigenschaft gibt ein Bild an, das in Zellen ohne Werte angezeigt wird, wenn die Spalte nicht datengebunden ist und die ValueIsIcon-Eigenschaft der Zelle auf false festgelegt ist. Für eine datengebundene Spalte, deren Zellen kein zugeordnetes Bild haben, wird eine Standardfehlergrafik angezeigt.
Ist dein DGV datengebunden (also nutzt du DataBinding)?
Das hat nichts mit der Sprache zu tun, sondern ist ein generelles Konzept der ereignis-gesteuerten Window-Frameworks. Auch mit Java (unter Swing oder SWT) funktioniert dies so, genau wie z.B. mit dem C++ Framework Qt oder eben unter .NET mit WinForms oder WPF.
Stichwort: Splash-Screen
Schau mal bei den "Komponenten und Snippets" nach, dort gibt es einige als Vorlage.
Vllt. helfen dir folgende Links
Customize the build report
Customize Build Report Summary view
TFS 2010 – Customizing Build Information
Ansonsten such nach "TFS Build Report Customization".
Du kannst der MeasureString-Methode noch die maximale Breite als 3. Parameter angeben.
Und ziehe die FindAll bzw. FindIndex-Aufrufe aus der for-Schleife raus, denn sonst werden diese jedesmal ausgeführt.
Hi,
du mußt die Sonderzeichen selbst escapen, s.a. Wildcard, d.h. z.B. [[] bzw. []].
Hi,
man muss wohl noch eine weitere Optionen aktivieren:
Extras -> Einstellungen -> Experteneinstellungen
Du mußt in den Projektoptionen die "Erweiterten Buildkonfigurationen anzeigen" aktivieren, s. Debug? Release? Wo ist die Projektmappenkonfiguration? (sollte auch für VS 2010 Express gelten).
Hi,
du solltest dir mal genauer die Eigenschaften der ToolStripMenu(Item) Klasse in der MSDN-Hilfe anschauen - dann würdest du dort eine "AutoClose" Eigenschaft finden (und beachte auch den Hinweis dort)...
Hi,
benutze einfach das DropDownOpening (bzw. DropDownOpened) Ereignis des ToolStripMenu, um dort dann jeweils anhand der Bedingung den Enabled-Status zu setzen.
Hi,
merk dir doch einfach das zuletzt ausgeführt SQL-Command und speichere es beim Programmende in die App-Settings (bzw. User-Settings).
Edit: und natürlich dieses dann beim Programmstart wieder ausführen 😁
Beachtet aber, dass im GAC die Assemblies signiert sein müssen.
Hi,
du solltest auf jeden Fall das Erzeugen des TreeViews mittels BeginUpdate() und EndUpdate() umrahmen.
Evtl. könntest du es zusätzlich noch ein wenig beschleunigen, wenn du AddRange anstatt einzeln Add benutzt.
Hi,
@inflames2k: in "laenge" wird wohl schon der abgespeicherte Column.Width stehen (es werden ja keine Strings überprüft).
@tmase7: setze mal DataGridViewAutoSizeColumnMode.None bevor du die Column.Width setzt.
Oder gleich File.ReadAllBytes().
Edit: Man sollte schon die richtigen Klammern benutzen 😁
Hi,
ich denke, du mußt mit Alpha-Wert 0 überschreiben, d.h. (0, r, b, g) also z.B. (0, 0, 0, 0).
Dazu muß deine Bitmap aber ein PixelFormat mit Alpha unterstützen, z.B. Format32bppArgb bzw. Canonical.
Hi all together,
unter .NET 4 würde ich mal die Memory Mapped Files ausprobieren, denn diese sind extra zum (schnellen) Zugriff auf große Dateien ausgelegt.
Und insbesondere die Pufferung ist eigentlich der Flaschenhals beim Lesen von großen Datenmengen in modernen Systemen (da ja immer die Daten dann mehrfach kopiert werden und daher habe ich bei meinen C++ Programmen dann die Pufferung immer komplett ausgeschaltet, damit die Daten ruckzuck gelesen sind!).
Hi,
mit deinem Select-Befehl erzeugst du ja einen String (Text) als einzige Rückgabe (durch das Verketten mittels +).
Du mußt schon die einzelnen Spalten getrennt angeben:
SELECT m.mannschaftsname, m.mannschaftsart, s.sportart
FROM mannschaft m, sportart s WHERE m.sportart = s.ID_PK_Index
Bei zwei gegeben Farben kannst du entweder über RGB die Werte berechnen:
Color minColor = ...;
Color maxColor = ...;
int r = minColor.R + (maxColor.R - minColor.R) * percent;
int g = minColor.G + (maxColor.G - minColor.G) * percent;
int b = minColor.B + (maxColor.B - minColor.B) * percent;
Color color = Color.FromArgb(r, g, b);
(ich dachte dies wäre aber klar, anhand meiner obigen Formel)
Alternativ über den HSV-Farbraum berechnen (d.h. zur Ausgabe dann aber wieder in RGB umrechnen).
Zu HSV (manchmal aus HSB genannt) müßte es einige Beiträge hier im Forum (und tausende im Netz) geben.
Ich dachte, du wolltest einen Pegel-Ausschlag darstellen (wie bei einem Equalizer).
Für das Spektrum:
wenn du es ganz einfach haben willst, dann nimm
int b = (int)(percent * 255.0f);
Color color = Color.FromArgb(0, 0, b);
Damit kriegst du Farben von schwarz bis hellblau.
Hi,
wenn es nur zur Visualisierung dient, dann laß dir den Farbverlauf vom LinearGradientBrush berechnen und zeige dann nur den konkreten Prozentsatz an:
Color color01 = Colors.Yellow;
Color color02 = Colors.Red;
RectangleF rect = new RectangleF(...);
using (LinearGradientBrush linearGradientBrush = new LinearGradientBrush(rect, color01, color02, LinearGradientMode.Vertical))
{
linearGradientBrush.WrapMode = WrapMode.TileFlipY;
rect.Height *= percent;
e.Graphics.FillRectangle(linearGradientBrush, rect);
}
Den LinearGradientBrush brauchst du auch nur einmalig zu erstellen (und z.B. als Membervariable anlegen).
Bei mehreren Farbverläufen mußt du es dann entsprechend aufteilen (bzw. ein Array dafür benutzen).
Hi,
Dravere hat dir doch unter Ändern des Icons einer externen (EXE-)Datei schon die WinAPI-Funktionen dafür genannt (mit reinen C#/.NET-Mitteln wirst du das auf keinen Fall lösen können).
Wenn du noch Programmieranfänger bist, dann solltest du dir eher Aufgaben suchen, welche auch direkt mit C# lösbar sind.
Hi Daniel,
hast du denn schon überprüft, ob nicht doch eine der Dateien (nzw. Referenzen) ein Datum in der Zukunft hat (wie auch in dem Link beschrieben)?
Und bei 20 Projekten würde ich zuerst einmal rausfinden wollen, welches davon wirklich die Ursache ist. Dazu dann der Reihe nach die einzelnen Projekte mittels "Build" versuchen zu bauen und dann den Build-Output anschauen (bei abhängigen Projekten kann es natürlich vorkommen, daß mehrere "anschlagen" - dann mußt du den untersten der Dependency-Reihe näher untersuchen).
Genau so etwas hatte ich mir gedacht 😁
Und wie liest du die Daten aus?
Meinst du OnSerializedAttribute/OnDeserializeAttribute aus dem System.Runtime.Serialization Namespace?
Außerdem ist Delete noch falsch implementiert bei bMoveToBin = true und bWithDialog = false (dafür gibt es den |= Operator 😛).
Und die Suche nach "C# SHFileOperation" führt z.B. nach C# does Shell, Part 2
Hi,
benutze einfach ISerializable für deine Klasse und implementiere GetObjectData entsprechend.
Außerdem benötigt die Klasse dann noch einen Konstruktor(SerializationInfo, StreamingContext) zum deserialisieren.
Hi,
der DataTable hat die DefaultView-Eigenschaft und somit werden alle Sortierungs- und Filteränderungen direkt dahin weitergegeben.
Binde einfach an eine eigene DataView:
DataView dataView = new dataView(dataTable);
control.DataSource = dataView;
Hi,
und wo sind die Anführungsstriche um den Tabellennamen herum? Und sag nicht, diese wären doch vorhanden...
Also noch mal explizit:
string sql = "CREATE TABLE \"" + name + "\" (Datum DATE, Kilometer INT, etc...)"
Hi,
wie wurden die Tabellen denn angelegt?
Mit gequoteten Namen sollten diese dann case-sensitive abgelegt werden:
create table "GroßKlein"
s.a. den Kommentar in Support case-sensitive table name and column/field name
Hi,
ich weiß nicht so richtig, wo das Problem ist? Du kannst doch den ConnectionString jederzeit ändern (auch zur Laufzeit).
Woher weiß die Anwendung denn, mit welcher Datenbank sie arbeiten soll (gibt es ein festgelegtes Namensschema z.B. "DB2012_01")?
Hi dust258,
ist auf dem anderen Rechner evtl. IME aktiviert: Input method ?
Damit hatte ich auch mal bei einem C#-Projekt Probleme (aber noch unter WinForms).
P.S. winSharp93, es scheint kein Kundenrechner zu sein, sondern ein andere Rechner im Netzwerk 😉
Hi zusammen,
unter Problem with icon on creating new maximized MDI child form in .NET stehen einige Workarounds...
Hi,
schau dir mal die Überladung der Sort-Methode mit dem IComparer an: DataGridView.Sort Method (IComparer).
P.S. Mit einer Datanbank brauchst du auch nicht arbeiten, aber DataBinding (z.B. mittels einer DataTable) solltest du schon verwenden - oder alternativ per LINQ die Sortierung durchführen und an das DGV binden.
Hi,
dann schau dir mal die Eigenschaften von IPHostEntry genau an - dürfte AddressList sein 😉
N'abend,
meinst du das Vorschaufenster (von Vista/Win7)? Oder einfach ob der Button vorhanden ist?
Und wofür benötigst du dies?
Hi planetberlin,
zeichnest du denn die MDI-Childs korrekt (d.h. im Paint-Ereignis, s.a. [Tutorial] Zeichnen in Windows-Forms-Programmen (Paint/OnPaint, PictureBox))?
Hi,
du scheinst so etwas zu suchen: Explorer column handler shell extension in C# ?
Du solltest aber auf jeden Fall .NET 4 dafür verwenden, da es bei .NET 2 und 3 Shell Extensions zu Kompatibilitätsproblemen beim Laden kommen kann.
Unter How to Write Windows Shell Extension with .NET Languages und Creating a shell extension with C# gibt es noch zwei weitere Artikel zu Shell Extensions mit C#.
Hi zusammen,
die komplette True Type Spezifikation gibt es direkt bei MS unter Microsoft Typography - Features of TrueType and OpenType (Specifications) (etwas nach unten scrollen)
Interessant scheint auch die Font properties extension zu sein, mit der man sich detailliertere Infos zu (TT- bzw. OT-) Fonts direkt in Windows anzeigen lassen kann.
Kannst du nicht einfach in der Logik-Schicht eine Methode anbieten, welche dir alle Provider als Liste (bzw. noch besser als Enumeration) liefert?
Oder sollen auch über Plugins o.ä. weitere IStockDownload-Implementationen dynamisch hinzukommen? Aber selbst dann könntest du eine Registrierungsmethode anbieten.
Hi,
wenn du schon EditingControl weißt, dann schau doch einfach in den Ereignissen nach.
Und EditingControlShowing sollte wohl passend sein 😁
Hi Powerslave,
ich weiß nicht, ob du mit
Sagen wir, ich müsste die Einschränkung über ein Query machen, dann wäre es ja (auch in deinem Fall) wieder nur ein Delegieren zum DataLayer.
Linq (bzw. IQueryable) falsch verstanden hast.
Der Compiler erzeugt aus der Where-Bedingung intern einfach einen ExpressionTree, welcher dann vom Linq-Provider aufgelöst wird, d.h. die Query findet real wirklich auf der Datenbank statt (d.h. es wird ein SQL-Command mit WHERE erzeugt).
Dabei gehe ich davon aus, daß du NHibernate Linq benutzt (bzw. benutzen wirst).
Verwendest du eine DataTable zum Binden?
Dann probiere dort mal
dataTable.Columns["Spaltenname].DataType = typeof(int);
(diesmal aber vor dem Binden).
Hi,
unter http://www.dacris.com/blog/2010/07/31/c-serializable-dictionary-a-working-example und http://weblogs.asp.net/pwelter34/archive/2006/05/03/444961.aspx gibt es serialisierbare Dictionaries.