Das statische Property ID kann nich aufgelöst werden, aber durch die "where" klausel, müsste es doch klar sein das es ein statische Property mit dem Name ID gibt??
public class STATICINFO
{
public static int ID { get { return 99; } }
}
public class TTT<T>
where T : STATICINFO
{
public TTT()
{
int ff= T.ID; //Fehler
}
}
als eigentlich sollte man ja doppeltes in Frameworks meiden
http://msdn.microsoft.com/de-de/library/system.drawing.systemcolors_members.aspx
ist komplett in
http://msdn.microsoft.com/de-de/library/system.drawing.knowncolor.aspx
enthalten, mogel
thoniel schrieb:
hi
ich brauche 2 konstruktoren für eine klasse.
der hat zB den parameter (double speed) und der andere (double length).
wie kann ich das vernünftig umgehen (ohne zB die parameter schwachsinnig in der reihenfolge zu verschieben oder eine bool einzuführen um umzuschalten).
Was ist das für eine komische Klasse, die einmal nur mit einer Geschwindigkeit und einmal nur mit einer Länge initialisiert wird? Sollte nicht immer beides gesetzt werden?
Schon klar, nur hat das ja nichts mit der Richtigkeit oder nicht Richtigkeit deines Posts zu tuen, gruppieren und duplikate entfernen sind zwei verschiedene Dinge.
Hmmm, naja, die DLL ist halt nicht von mir und ich möchte nicht unbedingt in dem Code rumpfuschen gehen und die DLL dann neu bauen. An den meisten Orten kann ich angeben, dass die Kopie gemacht werden soll, ist halt nur etwas unperformanter, wobei ich allerdings noch nicht überprüft habe, ob das überhaupt ins Gewicht fallen würde. Werden wahrscheinlich sowieso stellen sein, wo gespeichert oder geladen wird, also wo der User allenfalls ruhig etwas warten darf
Und an den Stellen wo man halt nicht kopieren kann, würde ich es dann so lösen, wenn ich es muss:
public class GlobalBuffer
: IDisposable
{
public int Size { get; private set; }
public IntPtr Handle { get; private set; }
public GlobalBuffer(int size)
{
this.Size = size;
this.Handle = Marshal.AllocHGlobal(size);
}
private ~GlobalBuffer()
{
Dispose();
}
public void Dispose()
{
this.Size = 0;
Marshal.FreeHGlobal(this.Handle);
this.Handle = IntPtr.Zero;
}
};
// und dann halt:
byte[] utf8 = Encoding.UTF8.GetBytes("Hello World!");
using(GlobalBuffer buffer = new GlobalBuffer(utf8.Length))
{
Marshal.Copy(utf8, 0, buffer.Handle, utf8.Length);
SaveArray(buffer.Handle, buffer.Size);
// ...
DoSomethingWithArray();
}
Grüssli
adonis schrieb:
Aber ich habe noch eine performence Frage.
In der listView sind jetzt zb 300+ Einträge. Wenn ich den Scrollbalken
benutze ruckelt es extrem, lässt sich das irgendwie unterbinden?
Ja, dazu gibt es auch einiges im Internet zu finden. Beispielsweise hier und hier, wobei es noch weit mehr [und imho bessere] Beschreibung dazu gibt.
Zuerst mal Danke für die kompetenten Antworten.
Firefighter, Dein Code konnte ich fast 1:1 übernehmen, wie von loks und Th69
erwähnt musste ich die ListView durch das DataGridView ersetzen und alles funktionier einwandfrei.
Echt stark dieses DataGridView. Gibt eine wunderbare Tabelle aus.
So macht Programmieren spass
Nochmals vielen Dank
Gruss
Hi,
ja mit Silverlight darfst du nur in einem Bereich schreiben, dem
Isolated Storage, und schreibt man eher so Sachen rein, wie Einstellungen von
deinem Programm. Silverlight baut auf dieses Sandboxprinzip.
Da sollte man eher auf nen Webservice zurückgreifen.
Silverlight läuft immer auf dem Client.
Wenn es nur eine Interne Seite wird, gehts doch auch mit WPF-Webanwendung.
WPF hat da ein paar mehr Rechte.