Heim >Backend-Entwicklung >C++ >Wie kann ich Bilder dynamisch in WPF laden?
Dynamisches Laden von Bildern in WPF
WPF-Anwendungen müssen zur Laufzeit häufig Bilder von externen Ressourcen laden. Mit den vom .NET Framework bereitgestellten Ressourcen ist der Prozess sehr einfach und unkompliziert.
Verwenden Sie die Klasse BitmapImage
, um Bilder zur Laufzeit zu laden. Es stellt ein Source
-Attribut bereit, das ein Uri
- oder Stream
-Objekt akzeptiert. Daher können Sie die Bildposition auf verschiedene Arten festlegen.
Uri verwenden
Uri
Bilddateien können direkt referenziert werden, unabhängig von ihrem Speicherort. Im Folgenden sind einige gängige URI-Formate aufgeführt:
Uri("file://path/to/image.png")
Uri("http://server/image.png")
Uri("pack://application:,,,/AssemblyName;component/path/to/image.png")
Beispiel für die Verwendung von Uri:
<code class="language-csharp">var uri = new Uri("pack://application:,,,/Bilder/sas.png"); var bitmap = new BitmapImage(uri); image1.Source = bitmap;</code>
Stream verwenden
Wenn das Bild als Stream
bereitgestellt wird, können Sie den folgenden Code verwenden:
<code class="language-csharp">using (var stream = new FileStream("path/to/image.png", FileMode.Open)) { var bitmap = new BitmapImage(); bitmap.BeginInit(); bitmap.StreamSource = stream; bitmap.EndInit(); image1.Source = bitmap; }</code>
Bildquelle festlegen
Nachdem Sie das BitmapImage
-Objekt erstellt haben, müssen Sie es dem Image
-Attribut des Source
-Steuerelements in XAML zuweisen. Zum Beispiel:
<code class="language-xml"><Image x:Name="image1" /></code>
<code class="language-csharp">image1.Source = bitmap;</code>
Weitere Anweisungen:
Image.Stretch
verwenden, um zu steuern, wie ein Bild in einem bestimmten Bereich angezeigt wird. Das obige ist der detaillierte Inhalt vonWie kann ich Bilder dynamisch in WPF laden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!