簡體   English   中英

C#WPF從MySQL顯示圖像

[英]C# WPF Show Image from Mysql

我是一個學生,我編程不好。 我將圖像保存在每個播放器的mysql數據庫中。 我創建了一個程序,可以從數據庫中列出一些足球運動員。 當我單擊datagrid中列出的播放器時,會出現一個新窗口,其中包含有關播放器的信息。 一切正常,但是現在我希望所選播放器的圖片從數據庫顯示在信息窗口中。 有誰能夠幫助我? 我的英語不是最好的(我17歲),所以我希望你能理解我的意思。

這是我試圖做的,但我不知道如何繼續。 PS。 在WPF中。

 MySqlCommand cmd = new MySqlCommand("SELECT Bilder FROM spieler WHERE Bilder='{8}'");
        MySqlDataReader rdr1 = cmd.ExecuteReader();

        try
        {
            conn.Open();
            while (rdr1.Read())
            {
                // image1... I don't know what to write here
            }

        }
        catch (Exception ex)
        {
            MessageBox.Show("Fehler: " + ex);
        }

        rdr1.Close()

只需使用byte[]強制轉換即可獲取它:

while (rdr1.Read())
{
   byte[] data = (byte[])reader[0]; // 0 is okay if you only selecting one column
   //And use:
   using (System.IO.MemoryStream ms = new System.IO.MemoryStream(data))
   {
      Image image = new Bitmap(ms);
   }
}

更新:在WPF中,使用BitmapImage

using (System.IO.MemoryStream ms = new System.IO.MemoryStream(data))
{
    var imageSource = new BitmapImage();
    imageSource.BeginInit();
    imageSource.StreamSource = ms;
    imageSource.CacheOption = BitmapCacheOption.OnLoad;
    imageSource.EndInit();

    // Assign the Source property of your image
    yourImage.Source = imageSource;
}

您保存圖像的列的類型是什么? 你可以這樣嘗試

Image tmp = ImageConverter.ConvertFrom(rdr1.GetStream("photo"));

照片是您專欄的名稱

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM