(Решено) не удалось привести объект типа 'system.byte' к типу 'system.string' (комбинированный список заполнить PictureBox) - PullRequest
0 голосов
/ 22 апреля 2020

и извините за неудобства. Я надеюсь, что вы можете помочь мне! У меня есть этот код, который при выборе поля со списком заполняет ряд текстовых полей. Теперь я хотел бы убедиться, что в дополнение к текстовому полю также добавлено изображение, но я получаю сообщение об ошибке в соответствии с заголовком. Как я могу продолжить? Вот код Спасибо всем за помощь.

// STRINGA CHE PERMETTE DALLA COMBOBOX VIA DI DETERMINARE IL REFERENTE
    private void cboVia_SelectedIndexChanged(object sender, EventArgs e)
    {
        string str = constring;
        SqlConnection con2 = new SqlConnection(str);
        string query = "SELECT Referenti.IDReferenti, Referenti.CognomeRF, Referenti.NomeRF, Referenti.ZonaRF, Referenti.LinkRF, Referenti.CodiceFotoRF, Referenti.TelefonoRF, Referenti.EmailRF, Referenti.ImageRF, Vie.Settore, Vie.Zona, Vie.Via FROM  Referenti FULL OUTER JOIN  Vie ON Referenti.ZonaRF = Vie.Zona where Via = '" + cboVia.Text + "'";
        SqlCommand cmd = new SqlCommand(query, con2);
        SqlDataReader dbr;
        try
        {

            con2.Open();

            dbr = cmd.ExecuteReader();
            while (dbr.Read())
            {
                //string sID = (string)dbr["IDReferenti"].ToString();
                string CognomeReferente = (string)dbr["CognomeRF"]; // name is string value
                string NomeReferente = (string)dbr["NomeRF"];
                string ZonaReferente = (string)dbr["ZonaRF"];
                string EmailReferente = (string)dbr["EmailRF"];
                string CodiceFotoReferente = (string)dbr["CodiceFotoRF"];
                string imageRF = (string)dbr["ImageRF"];
                //txtID.Text = sID;
                txtCognomeReferente.Text = CognomeReferente;
                txtnomeReferente.Text = NomeReferente;
                txtEmailReferente.Text = EmailReferente;
                txtZona.Text = ZonaReferente;
                txtcodiceFotoReferente.Text = CodiceFotoReferente;
                // PICTUREBOX
                imageRFPictureBox.ImageLocation = imageRF;
                //PICTUREBOX
            }
        }
        catch (System.Exception ex)
        {
            MessageBox.Show(ex.Message.ToString(), "Errore");
        }
    }
    // FINE STRINGA CHE PERMETTE ALLA COMBOBOX VIA DI DETERMINARE IL REFERENTE

1 Ответ

0 голосов
/ 23 апреля 2020

@ SeanSkelly спасибо! Благодаря вашему совету, может быть, я нашел решение!

byte[] imageRF = (byte[])dbr["ImageRF"];
if (imageRF == null)
                {
                    imageRFPictureBox.Image = null;
                }
                else
                {
                    MemoryStream mstream = new MemoryStream(imageRF);

                    imageRFPictureBox.Image = System.Drawing.Image.FromStream(mstream);
                }

            }
        }
        catch (System.Exception ex)
        {
            MessageBox.Show(ex.Message.ToString(), "Errore");
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...