// EDIT: Ich versuche mal das Problem etwas einfacher zu formulieren:
Wie kann ich das Bild in einer PictureBox zur Laufzeit ändern? Das Bild liegt als Resource im Projekt vor.
na einach so:
pictureBox.Image = Resource1.deiBild;
Meinst du das?
Gruß David
Bei mir ging das nicht, aber jetzt habe ich es rausgefunden:
Properties.Resources.meinBild;
Jetzt kommt das nächste Problem: Ich muss dieses Bild an eine Funktion als Referenz übergeben. Da sagt er aber:
Fehler 1 Eine Eigenschaft oder ein Indexer kann nicht als out- oder ref-Parameter übergeben werden. E:\Programmierung\C#\Meine Projekte\Microsoft Visual Studio 2005\MusicManager\1\MusicManager\MusicDownloadManager\Form1.cs 47 44 MusicManager
Wie kann ich der Funktion eine Referenz des Bildes übergeben?
Hallo chri,
die Fehlermeldung passt nicht zu dem Code. Außerdem sagt die Fehlermeldung genau, was das Problem ist. Siehe [Hinweis] Syntaxfehler selbst lösen (Compilerfehlermeldungen)
BTW: Fehlermeldungen bitte nicht mit
sondern mit [QUOTE] einschließen.
herbivore
Die MSDN-Hilfe leitet mich an die Seite "Übergeben von Parametern (C#-Programmierhandbuch)" weiter. Dieser Seite zufolge habe ich das richtig gemacht. Ich glaube es liegt eher daran, das C# Probleme damit hat, die Resource als Referenz an die Funktion zu übergeben.
Hier der Code:
private void buttonAlbumAdd_Click(object sender, EventArgs e)
{
RatingControlManager test = new RatingControlManager();
test.test(ref this.pictureBoxStar1, ref Properties.Resources.star2);
}
public void test(ref System.Windows.Forms.PictureBox star, ref System.Drawing.Bitmap image)
{
star.Image = image;
}
Wie kann ich das Bild als Referenz an die Funktion übergeben?
*hust* also das Problem liegt eher nicht bei C# sondern an deiner (sorry wenn ich es so ausdrücke) mangelhaften Kenntnis...
In C# werden Objekte IMMER als Referenz übergeben...
Die PictureBox und das Bitmap als ref zu übergeben ist also total sinnlos, da sie das ohne hin schon werden...
Gruß David
Edit: falls du dir das im 🛈 anschauen willst, Stichwort Wertetypen und Referenztypen...
Ich glaube es liegt eher daran, das C# Probleme damit hat, die Resource als Referenz an die Funktion zu übergeben.
Habe auch nicht gemeint, dass das Problem an C# liegt, sondern an der Art wie ich C# anwende. 😁
Ok danke, habe nicht gewusst, dass System.Drawing.Bitmap ein Objekt ist (habe gedacht es wäre ein Datentyp).
Hallo chri,
System.Drawing.Bitmap ist ja auch ein Datentyp und kein Objekt.
herbivore
Aber wenn du
Bitmap irgendwas = (Bitmap)Image.fromIrgendwas();
machst hast du ein Objekt und das ist ein Referenztyp...
Wenn du z.B- nen int-Wert hättest könntest du mit ref arbeiten, weil das Wertetypen sind...
Gruß David