Ist seit Mitte April 2010 bekannt:
http://connect.microsoft.com/VisualStudio/feedback/details/550489/c-unable-to-build-with-my-standard-username
Wer hat schon so lange Benutzernamen? :p
Ich habe es ein paar Monate danach - auf der Suche nach was anderem - durch einen Blog erfahren
Grüssli
David W schrieb:
Scheinbar verwende ich abstrakte Klasse zu wenig, ich habe zumindest keine in Benutzung die ein eigenen ctor hat, dacht das wäre nicht möglich - so schnell kann man irren
@Scorcher24
In deinem Code beim Startposting hast du ein public vor dem ctor...
Das minimalbeispiel habe ich hier manuell reingetippert. Erst als ich danach nochmal über den Code im VC# gekuckt habe, ist mir das aufgefallen.
Wenn man deine Frage genau betrachtet, dann ist dein Problem nicht der Delegate an sich, sondern die anonyme Methode in der die Variable aus dem übergeordneten Scope verwendet wird.
Anonyme Methoden die auf Variablen im äußeren Scope zugreifen werden vom Compiler in kleine Klassen übersetzt die als Membervariablen die Variablen des äußeren Scopes haben.
Genauer kannst du es hier nachlesen: http://msdn.microsoft.com/en-us/magazine/cc163970.aspx#S7
Scorcher24 schrieb:
Gibts da einen Trick dazu? Bin noch ein Rookie was C# angeht, aber probiere grade mit XNA rum und da kam dieses Problem auf.
Danke
Nein, es gibt da keinen Trick. Der Trick ist nämlich, dass das eine "Kurzschreibweise" ist, für Fälle, wo man genau sowas nicht braucht.
Braucht man es später dann doch, kann man jederzeit auf die "längere Schreibweise" umstellen, ohne dass das Interface der Klasse sich ändern würde.
Vor diesem Problem stand ich auch eines Tages.
Folgendes passiert nämlich bei "combobox.SelectedItem = irgendeineValue;":
Die Runtime schaut in der Liste von Objekten in der Combobox nach ob ein Item welches du mit SelectedItem setzen willst existiert.
Das macht die Runtime über einen Equals vergleich. Heißt also du musst die Equals-Methode überschreiben.
FrEEzE2046 schrieb:
Sheldor schrieb:
Nein aber warum liefert die GetBindingExpression Methode immer null als Rückgabewert ?
Ich hab keine Ahnung Hast du Erfahrung damit? Ich denke mal, dass wenn ich das Binding auf MyGrid.Height setze, dass ich dann GetBindingExpression auf Grid.ActualHeightProperty machen muss oder?
Sollte eigentlich so funktionieren.
Hast du es mittlerweile versucht ?
Zeig mal den Codeausschnitt bei dem GetBindingExpression NULL zurückliefert.
Gruss Sheldor
Firefighter schrieb:
Oh entschuldige bitte, hier ist das Video.
http://www.youtube.com/watch?v=MTfM5pmUrnU
Toll. Und was genau willst du mir mit dieser wild zusammengeschnittenen Klötzchengrafik bei der nicht wirklich Details zu erkennen sind jetzt genau sagen?
Bist du schon nicht mehr in der Lage, deine Argumente in Sätze zu fassen oder was willst du mit dieser "Palette" (die jetzt zu einem Video mutiert ist) jetzt von mir?
Bei der user Freundlichkeit in diesem Post ging es mir eigentlich nur darum das ein user ein maximum für die files welche hochgeladen werden können setzen kann, ohne eine hässliche exception zu bekommen.
Und um auf deine Frage zurück zu kommen.
Während dem upload zeigen wir ein gif, damit der user weiss das die Datei am hochladen ist.
Da unsere Kunden eigentlich eher kleinere Dateien hochladen reichts dies für uns vollkommen aus.
Somit kann ich dir leider auch nicht sagen wie du soetwas umsetzen kannst(falls du überhaupt auf hilfe stellung hinaus wolltest ).
noob44 schrieb:
hi, ich (anfänger) möchte eine klass basteln, die so aussieht:
string titel
string[] geliehene_buecher;
wie müßten klassendefeinition, constructor und get/set aussehen?
im galileo-buch ist nichts in der art zu finden.
danke für eure hilfe.
1. Eine Klasse mit Titel und geliehene Bücher macht irgendwie kein Sinn, der Leihende hat die Bücherliste aber kein Titel, und die Bücher haben ein Titel aber keine Liste - daher -> Zwei Klassen
2. Programmiere auf Englisch
3. Lerne was get und set bei Properties bedeutet
4. Nimm eine Generische Liste und kein Statisches Array, das ist aus verschiedenen Gründen besser.
Pseudo:
public class Customer
{
public Customer()
{
RentedBooks = new List<Book>();
}
public List<Book> RentedBooks { get; set; }
}
public class Book
{
public Book(string title)
{
Title = title;
}
public string Title { get; set; }
}
DataGridView.Sort(IComparer comparer) mit einer eigenen Klasse, welche IComparer implementiert und nach den Fachbereichen sortiert, wobei x zuerst auf den ausgewählte Fachbereich geprüft wird und falls dies zutrifft eine -1 zurückliefert?
Grüssli
du kannst ja einen wrapper um dieses objekt mitliefern, der das interne dictionary per reflection nach aussen weitergibt.
Nur muss der Client wenn die Properties vorher wirklich nicht klar definiert sind, über iteratoren oder strings auf diese zugreifen.
mfg
serial
Hallo,
ich habe ein Controlerstellt, dieses Control soll öfter dem Stackpanel
hinzugefügt werden, was zu Problemen führt, weil man das geilche Control
nicht mehrfach hinzufügen kann. Also habe ich Noch einen Namen hinzugefügt;
nun habe ich das Probiert:
foreach (Spiele s in spieleliste)
{
stackPanel.Children.Add(new Appz_holderControl() { Titel = s.Title, source = s.ImageName, Beschreibung = s.Description, Name=s.Name });
}
Das Kontrol wird zwar so oft angezeigt wie es soll, nur ohne den Inhalt den ich übergeben habe.
Wenn ich den Namen Weglasse und nur ein Control hinzufüge, ist es kein Problem.
Hat jemand eine Ahnung woran das liegt?
edit: ich musste in Blend nochmal neu "Binden". mhh geht doch nicht.
Lösung:
Ich habe das binding jetzt selber gemacht und nicht über blend, ich übergebe
die Spiele-Klasse an meine Appz_holderControl() und nutze sie dann als DataContext
PeterBerlin88 schrieb:
Bzw die z.B. Standardmäßig in dem Visual Express Studio /im GUI Designer)verwendet wird oder?
Kommt darauf an, was für ein Projekt du eröffnest. Wenn du ein WinForms Projekt erstellst, dann wird standardmässig natürlich der WinForms Designer angezeigt. Wenn du ein WPF Projekt erstellst, dann wird standardmässig der WPF Designer angezeigt.
Ich verstehe nicht so recht, worauf du mit deinen Fragen hinaus willst. Vielleicht solltest du zwei drei Schritte zurückgehen und uns erklären, wieso du dies wissen willst.
Grüssli