Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von T-Man
Thema: DateTimePicker-Eigenschaft gesucht
Am im Forum: GUI: Windows-Forms

Du könntest dafür sorgen, daß auch beim Drücken der Spacetaste das nächste Feld angewählt wird. Das dürfte den Usern noch am ehesten gefallen, da man die leichter und schneller trifft als . oder ,

dtp.KeyPress += delegate(object sender, KeyPressEventArgs e)
{
  if (e.KeyChar == ' ') e.KeyChar = '.';
};

Gruß,
T-Man

Thema: Performance bei bedingten Zuweisungen an bool Variablen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

@herbivore:

Du meinst also, daß

bool add;
switch (...)
{
  case a: add = <contition a>; break;
  case b: add = <contition b>; break;
  ...
  default: add = false; break;
}
if (add) ...;

eleganter und perfomanter als

bool add = false;
switch (...)
{
  case a: if (<contition a>) add = true; break;
  case b: if (<contition b>) add = true; break;
  ...
}
if (add) ...;

ist? Eleganter finde ich es auch, aber ist es tatsächlich perfomanter?

Gruß,
T-Man

Thema: Performance bei bedingten Zuweisungen an bool Variablen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat
Original von herbivore
Hallo T-Man,

warum soll es so nicht gehen?

herbivore
Hast Du Dir mein Beispiel mit dem switch angesehen? (Mein vorletzter Beitrag.) Ich kann nicht direkt bei der Initialisierung schon den richtigen Wert zuweisen...

Gruß,
T-Man

Thema: Performance bei bedingten Zuweisungen an bool Variablen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

@herbivore:

So wie Du es vorschlägst, geht es in meinem Fall ja leider nicht. Hatte den den Code im ersten Beitrag viel zu sehr gekürzt...

Gruß,
T-Man

Thema: Performance bei bedingten Zuweisungen an bool Variablen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Da es keine automatische Initialisierung gibt muß also in jedem fall eine Zuweisung erfolgen.

Es bieten sich somit die folgenden beiden Varianten:

bool add;
switch (...)
{
  case a: add = <contition a>; break;
  case b: add = <contition b>; break;
  ...
  default: add = false; break;
}
if (add) ...;

bool add = false;
switch (...)
{
  case a: if (<contition a>) add = true; break;
  case b: if (<contition b>) add = true; break;
  ...
}
if (add) ...;

In Variante 1 hat man auf jeden Fall genau eine Zuweisung. Der Wert, der zugewiesen wird, ist nicht zur Compilezeit klar.
In Variante 2 hat man 1 oder 2 Zuweisungen, bei beiden ist jedoch schon zur Compilezeit der Wert, der zugewiesen wird, klar.

Was ist nun perfomanter?

Thema: Performance bei bedingten Zuweisungen an bool Variablen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

@x86fanboy:

Gilt das denn auch für lokale Variablen in Methoden? Die werden schließlich auf dem Stack und nicht im Heap erzeugt...

Gruß,
T-Man

Thema: Performance bei bedingten Zuweisungen an bool Variablen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ich habe den Code sehr gekürzt. Eigentlich sieht es in etwa folgendermaßen aus:

bool add = false;
switch(<switch-condition>)
{
  case a: add = <condition a>; break;
  case b: add = <condition b>; break;
  case c: add = <condition c>; break;
  ...
  ...
}
if (add) ...;

Die Alternative ist:

bool add = false;
switch(<switch-condition>)
{
  case a: if (<condition a>) add = true; break;
  case b: if (<condition b>) add = true; break;
  case c: if (<condition c>) add = true; break;
  ...
  ...
}
if (add) ...;

Bei Variante 1 gibt es in jedem Fall eine Zuweisung. Die Wert ist aber zur Compilezeit noch unklar. Bei Variante 2 gibt es nicht immer eine Zuweisung und wenn, dann ist der Wert schon zur Compilezeit klar.

Thema: Strings zusammenbasteln geht nicht
Am im Forum: Rund um die Programmierung

Wie genau testest Du, was in cmds steht und was in cmd1 steht? Steht vielleicht in cmd1 noch mehr als nur "AKTPD1" ?

Gruß,
T-Man

Thema: Performance bei bedingten Zuweisungen an bool Variablen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Wird b denn nicht automatisch mit false initialisiert?
Wenn nicht, muß die deklaration von

bool b;

in

bool b = false;

geändert werden.

Thema: Problem mit darsatellung
Am im Forum: Web-Technologien

Ich würde schätzen, das geht mit CSS. Schau mal bei selfhtml, da findest Du die Lösung bestimmt.

Gruß,
T-Man

Thema: Performance bei bedingten Zuweisungen an bool Variablen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo Leute,

ich würde gerne wissen, welcher der beiden folgenden Code-Blöcke perfomanter ist:

bool b;
if (<condition>) b = true;

bool b;
b = <condition>;

Kann mir das jemand so sagen, oder kann mir jemand sagen, wie man das herausfindet? Ich vermute ja, daß Variante 1 perfomanter ist...

Gruß,
T-Man

Thema: Key eines Dictionary-Properties im getter/setter ermitteln?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Der Setter ist natürlich für das ganze Dictionary. Wenn Du ein Element des Dictionarys setzt, wird der Setter fürs Dictionary natürlich nicht durchlaufen.

Gruß,
T-Man

Thema: Ausrichtung von Controls
Am im Forum: GUI: Windows-Forms

Es gibt die Eigenschaft Dock mit den zugehörigen DockStyles.

Gruß,
T-Man

Thema: Methodenaufruf statt statischen Text für Menu-Text in Form-Designer
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hallo Jungs und Mädels,

ich arbeite mit VS2005 und habe in meiner Anwendung ein Menü, daß ich mit dem Form-Designer zusammengebastelt habe. Nun kann/muß man da ja auch angeben, welchen Text ein MenuItem anzeigen soll. Man trägt dort Konstanten ein. (Wenn ich die Code-Analyse laufen lasse, wird an der Stelle gemeckert, daß ich die Bezeichnungen aus einer Resource-Datei holen soll...)
Ich möchte aber wie empfohlen, den (sprachabhängigen) Text aus einer Resource-Datei holen.
Z.Zt. mach ich es so, daß ich nach der Ausführung der Methode InitializeComponent(), die vom Code-Designer generiert wird, die Texte neu setze. Schöner fände ich es, wenn ich im Form-Designer den entsprechenden Methodenaufruf für den Text angeben könnte, anstatt einer Konstanten und es nicht hinterher überschreiben müßte.
Wenn ich einfach den Code (InitializeComponent()) selber editiere, wird meine Änderung verworfen, sobald der Code mal wieder neu erzeugt wird. (Ist ja auch klar.)

Kann man da was machen, oder geht es nur so, wie ich es gelöst habe?

Gruß,
T-Man

Thema: web.config aus Quellcodeverwaltung ausschließen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Da war ich zu schnell. Es gibt diese Option in anderen Projekten, aber nicht in dem, in dem die web.config drin ist.

Muß ich das jetzt verstehen???

Gruß,
T-Man

Thema: web.config aus Quellcodeverwaltung ausschließen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ich habe gerade gesehen, daß es diese Option in VS2003 gab. In VS2005 gibt es sie nicht mehr. Zumindest nicht in meiner Version...

Gruß,
T-Man

Thema: web.config aus Quellcodeverwaltung ausschließen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Zitat
Original von EvilTK
Datei im Solution Explorer selektieren.
File - Source Control - "Exclude File {datei} from Source Control".
Genau das suche ich. Das gibt es aber bei mir - wieso auch immer - nicht.

Ich habe die Version 2005.
Welche Version nutzt Du?

Gruß,
T-Man

Thema: web.config aus Quellcodeverwaltung ausschließen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Es ist wohl allgemein so, daß Visual Studio 2005 jede Datei, die zu einem Projekt gehört zum Check-In anbietet, ganz gleich welche Endung sie hat und ganz gleich, ob sie im Repository schon existiert. Zumindest konnte ich keinen Weg finden, das zu verhindern.

Wenn jemandem noch was einfällt, wie es doch geht, wäre ich sehr dankbar. Jedesmal darauf achten zu müssen, die Datei nicht mit einzuchecken, ist ganz schön lästig.

Mit VS2003 war das übrigens kein Problem. Da mußte die web.config nicht zum Projekt gehören. Es reichte, wenn sie lokal im Verzeichnis lag...

Gruß,
T-Man

Thema: web.config aus Quellcodeverwaltung ausschließen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ich habe VSS gestartet und dort bei den File-Types bei der File-Group WEB *.config entfernt. (In allen anderen File-Groups gab es kein *.config.) Desweiteren habe ich die web.config bei VSS gelöscht.

Bei VS2005 hat nun die web.config das gelbe Plus. Sie wird als neue Projekt-Datei behandelt. Wenn ich nun für die ganze Solution 'check in' anwähle, bekomme ich eine Liste aller ausgecheckten Dateien. Da ist die web.config mit dabei. Ich habe hier nur die möglichkeit die web.config zu deselektieren. Beim nächsten mal siehts dann wieder genauso aus....

Das Festlegen der Standarddateitypen scheine ich also entweder nicht richtig verstanden/gemacht zu haben, oder es hat keine Auswirkung.

Die Option "Nur einchecken, was es gibt", sehe ich nirgends.

Gruß,
T-Man

Thema: web.config aus Quellcodeverwaltung ausschließen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ich habe die web.config aus der VSS Verwaltung rausgeschmissen und bei VSS bei File-Types das *.config entfernt.
Dennoch will Visual Studio 2005 die web.config einchecken, wenn ich für die ganze Solution 'check in' wähle. Wenn ich viel ändere und dann alles einchecken will, will ich nicht jedesmal darauf achten müssen, daß web.config nicht mit eingecheckt wird...

Gibt es da keine Lösung für?

Gruß,
T-Man

Thema: ASP.NET LinkButton als "Defaultbutton"
Am im Forum: Web-Technologien

Hallo marcel,

zunächst mal fehlt das Semikolon am Ende des Scripts.

Es wäre praktisch, wenn Du etwas mehr von dem Code hier posten würdest, bzw. genauer beschreiben würdest, wie Deine Form aussieht...

Du willst, daß beim drücken der Return-Taste der Button 'ausgelöst' wird. Immer? Nur wenn der Focus in einem bestimmten Eingabefeld ist... ???

Gruß,
T-Man

Thema: web.config aus Quellcodeverwaltung ausschließen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hm, dann bin ich vieleicht mit Blindheit geschlagen. Wie geht das? Bei SourceSafe gebe ich doch ganze Projekte an. Da wird alles alles was in einem Verzeichnis steht eingebunden. Eine Option, einzeln Dateien auszuschließen sehe ich nicht...

Gruß,
T-Man

Thema: web.config aus Quellcodeverwaltung ausschließen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ich arbeite mit VS2005 und SourceSafe.
Das Projekt wird an mehr als einem Rechner bearbeitet. (Daher ist auch SourceSafe nötig...)

Nun das Problem:

Auf jedem Rechner muß eine eigene web.config benutzt werden.
Beim Ein- Auschecken des Projekts soll also die web.config übergangen werden.
Wie stelle ich das an? Die web.config wird leider automatisch unter die Kontrolle von SourceSafe gestellt.
web.config aus dem Projekt ausschließen geht nicht, da dann nicht gedebuggt werden kann.

Hat jemand 'ne Idee?

Gruß,
T-Man

Thema: Listbox selektiert nicht
Am im Forum: GUI: Windows-Forms

Das war es. Besten Dank!!!

Ich glaub ich muß mir demnächst mal 'n gutes Buch zum Thema .net Windows Forms holen und lesen. Ein wenig Grundlagenwissen hilft sicher viel. Zur Zeit bastel ich mit Hilfe der Visual-Hilfe... Funktioniert recht gut, aber es wäre doch angenehmer genauer zu wissen, was da eigentlich abläuft. Gibt es da ein besonders gutes Buch, das mir jemand empfehlen kann?

Gruß,
T-Man

Thema: Listbox selektiert nicht
Am im Forum: GUI: Windows-Forms

Daran liegts leider wohl nicht.
Ich habe das füllen mal ganz ans Ende des Construktors verlegt. Das half nichts. Habe auch mal nur das Selektieren ans Ende gestellt. Das half auch nichts.
Das einzige, was bisher hilft, ist der Zugriff auf listBox.SelectedItems.Count.
Scheint so, als würde erst dadurch die Selektion entgültig gemacht.

Jetzt müßte man mal den Source-Code der Listbox haben...

Gruß,
T-Man

Thema: Listbox selektiert nicht
Am im Forum: GUI: Windows-Forms

Hab schon alles mögliche umgestellt. Hilft alles nichts. Was hilf ist folgende Zeile hinter "listBox.EndUpdate();":

int i = listBox.SelectedItems.Count;

So läuft es zwar, aber schön ist das nicht.

Gruß,
T-Man

Thema: Listbox selektiert nicht
Am im Forum: GUI: Windows-Forms

Hier erstmal der Code mit dem es das Problem gibt:

	public class ListBoxAttributeControl : Panel, IAttributeControl
	{
		private ListBoxAttributeValue attr;
		private Label label = new Label();
		private ListBox listBox = new ListBox();

		public ListBoxAttributeControl (ListBoxAttributeValue attr) : base()
		{
			this.attr = attr;

			label.Text = attr.FieldName;
			label.TextAlign = ContentAlignment.MiddleLeft;
			label.Width = 100;
			label.Dock = DockStyle.Left;

			listBox.SelectionMode = SelectionMode.MultiExtended;
			listBox.BeginUpdate();
			for (int ind=0; ind<attr.Value.Length; ind++)
			{
				listBox.Items.Add(attr.Value[ind].Text);
				listBox.SetSelected(ind,true);
			}
			listBox.EndUpdate();
			listBox.Height = 2*label.PreferredHeight;
			listBox.Dock = DockStyle.Fill;

			this.Controls.Add (listBox);
			this.Controls.Add (label);
			this.Height = (label.PreferredHeight > listBox.Height) ? label.PreferredHeight : listBox.Height;
		}
		//....
	}
Nun das Problem: Wenn ich mein Prog laufen lasse, und ein bestimmtes Event erzeuge, wird der im Code beschriebene Panel erzeugt und angezeigt. Leider sind die Einträge in der Listbox nicht selektiert. Wenn ich in Zeile 24 statt der 2 listBox.SelectedItems.Count benutze, wird selektiert. Das will ich aber eigentlich gar nicht. Weiß einer eine Lösung?

Gruß,
T-Man

Thema: Problem mit WebDAV und Windows Explorer
Am im Forum: Netzwerktechnologien

Mein Programm unterstützt WebDAV.
Ich kann mit dem Windows Explorer durch die Verzeichnisse (Collections) wandern, Dateien löschen etc.

Info: Ich arbeite asynchron (mit BeginAccept/EndAccept & BeginReceive/EndReceive).

Wenn ich nun eine neue Datei reinkopiere, habe ich folgendes Problem:

Der Explorer schickt mir zunächst einen HEAD Befehl, den ich korrekt beantworte. Dann schickt er einen PUT-Befehl.
Von dem bekomme ich leider nur das erste Paket (mit dem Header). Aus dem lese ich das Attribut "Content-Length" aus und weiß dann, daß da noch mehr Daten kommen müßten, als ich bisher bekommen habe. Deshalb rufe ich wieder BeginReceive auf. Jetzt müßte eigentlich meine ReadCallback-Methode wieder aufgerufen werden, sodaß ich weiter empfangen kann. Genau das passiert aber nicht. Es sieht so aus, als hätte der Windows Explorer nichts weiteres gesendet. Das kann aber nicht sein, denn das wäre ein fataler Bug...

Seltsam ist, das es mit Word funktioniert. Wenn ich mit Word eine neue Datei erzeuge und diese dann in meinem WebDAV-Ordner speichere, klappt es. Es kommt nach einem PROPFIND und einem LOCK (wie es sein soll) ein PUT Befehl. In dem ersten Paket ist zunächst nur der Header enthalten (genau wie beim Explorer). Ich erkenne anhand der "Content-Length", das da noch mehr kommen müßte, rufe BeginReceive auf... Und siehe da: die ReadCallback-Methode wird erneut aufgerufen und ich kann den Rest empfangen...

Hat jemand Idee? Wieso klappt es mit Word, nicht aber mit dem Explorer???
Braucht der Explorer eine Sonderbehandlung? Wie könnte die aussehen? Muß ich schon nach dem Empfang des Headers einen Response schicken? Und was müßte da dann drinn stehen? Im Response soll ja stehen, ob der PUT Erfolgreich war. Das weiß ich doch aber zu dem Zeitpunkt noch gar nicht...

Ich bin langsam am verzweifeln...

Gruß,
T-Man

Thema: Dokumentation mehrsprachig?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hm, klingt logisch. Danke!

Thema: Dokumentation mehrsprachig?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hallo Leute,

weiß jemand von Euch, ob und wie es möglich ist, die Dokumentation mit den ///-Komentaren und den xml-Tags wie <summary> mehrsprachig zu machen?

Das muß doch irgendwie möglich sein. Immerhin bekommt man im deutschen "MS Visual Studio .net" deutsche Hinweise, wenn man mit der Maus über eine Klasse aus dem Framework geht...

Gruß,
T-Man