Autor Beitrag
tomo2403
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 46

Win10
C#, VS 2019
BeitragVerfasst: So 23.09.18 15:36 
Hi Leute, :)

ich habe vor kurzem angefangen mich mit WPF zu beschäftigen. Vorher habe ich nur mit WinForms und ConsolenApp gearbeitet.

Jetzt möchte ich ein Bild in meine WPF (.net 7.0) einfügen.
Als erstes habe ich das Bild in die Ressourcen des Projekts gezogen.
Dann habe ich auf der Page in der ich Arbeite, ein Image aus der Toolbox herausgezogen und eingefügt.
Diesem Image habe ich in den Eigenschaften dem Attribut "Source" den Wert des Bildes aus den Ressourcen zugewiesen.
Die Eigenschaft "Visibility" ist auf "Visible" gesetzt und das Image ist im Vordergrund.

Im Entwurf ist das Bild zu sehen. Wenn ich jedoch jetzt die Application starte, ist es nicht mehr zu sehen.

Kann mir bitte jemand helfen?! :?!?:
Danke im Voraus!

Moderiert von user profile iconTh69: Beitragsformatierung überarbeitet.
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: So 23.09.18 16:07 
Hast du die "BuildAction" auch auf Resource im Designer gesetzt?

s.a. Set Image source from Resources in WPF application oder Display image from resources by binding - WPF.

Ansonsten zeige mal den generierten XAML-Code für das Image.
tomo2403 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 46

Win10
C#, VS 2019
BeitragVerfasst: So 23.09.18 16:15 
ausblenden C#-Quelltext
1:
<Image HorizontalAlignment="Left" Height="130" Margin="116,200,0,0" VerticalAlignment="Top" Width="281" Source="pack://siteoforigin:,,,/Resources/Bild.png"/>					
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: So 23.09.18 18:10 
Ich habe bisher siteoforigin noch nie benutzt, aber wenn ich Paket-URI in WPF richtig verstehe, so verweist dieses dann auf lokale Dateien (bezogen auf das Anwendungsverzeichnis). Bei einkompilierten Ressourcen solltest du daher application verwenden (ich weiß aber nicht, wie du den Designer dazu kriegst - du könntest bei den Ressourcen aber die "Build Action" auf "Copy File" setzen, dann müßte der kompilergenerierte Code funktionieren).

Dies würde dann auch erklären, warum du zur Laufzeit dann kein Bild siehst.
tomo2403 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 46

Win10
C#, VS 2019
BeitragVerfasst: Mo 24.09.18 16:28 
application wird zwar vom Designer angenommen, geändert hat sich aber nichts.
Das was auf der Website steht funktioniert auch nicht.

Ich kann zwar den eigentlichen Path angeben (Speicherort der Datei) allerdings bringt das nicht viel wenn das Produkt installiert wird, denn da gibt es diesen ja Path nicht.

Build Action gibt es bei mir nicht.
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mo 24.09.18 16:59 
Sorry, meinte "Build Action" auf "Content" stellen und "Copy To Output Directory" auf eines der "Copy ..." stellen, s.a. WPF-Anwendungsressource, Inhalts- und Datendateien.

Aber überprüfe ersteinmal, ob die "Build Action" (für die Ressource-Datei) auch wirklich auf "Resource" steht (weil dann müsste das Bild angezeigt werden), s. Resources in WPF – I (Binary Resources).

Für diesen Beitrag haben gedankt: tomo2403
tomo2403 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 46

Win10
C#, VS 2019
BeitragVerfasst: Mi 26.09.18 16:18 
Danke, jetzt funktioniert es! :zustimm:

Ich habe in den Eigenschaften der Ressource Build Action / Builtvorgang auf Content / Inhalt gestellt und
Copy To Output Directory / Ins Ausgabenverzeichnis kopieren auf Copy / Immer Kopieren gestellt.

Danke für die Unterstützung! :D