'OpenFileDialog' является типом и не может использоваться как выражение - PullRequest
0 голосов
/ 18 апреля 2020

Привет, я получаю сообщение об ошибке, поскольку OpenFileDialog и SaveFileDialog являются типом и не могут использоваться в качестве выражения. Не могли бы вы помочь мне в устранении этих ошибок error

     Private Sub btnEncode_Click(sender As Object, e As EventArgs)

        Using (SaveFileDialog sfd = New SaveFileDialog() {Filter() = "JPEG|*.jpg", ValidateNames = True})

            If (sfd.ShowDialog() = DialogResult.OK) Then

                MessagingToolkit.QRCode.Codec().QRCodeEncodere(encoder) = New 
                MessagingToolkit.QRCode.Codec.QRCodeEncoder()
                encoder.QRCodeScale = 8
                Bitmap(bmp) = encoder.Encode(txt.Encode.Text)
                PictureBox.Image = bmp
                bmp.Save(sfd.FileName, ImageFormat.Jpeg)
            End If
        End Using
    End Sub

    Private Sub btnDecode_Click(sender As Object, e As EventArgs) Handles Button2.Click

        Using (OpenFileDialog ofd = new OpenFileDialog() { Filter = "JPEG|*.jpg", ValidateNames = true, Multiselct - False})

            If (ofd.ShowDialog() = DialogResult.OK) Then

                PictureBox.Image = Image.FromeFile(ofd.FileName)
                MessagingToolkit.QRCode.Codec.QRCodeDecoder(Decoder) = New 
                MessagingToolkit.QRCode.Codec.QRCodeDecoder()
                txtDecode.Text = decoder.Decode(New QRCodeBitmapImage = (PictureBox.ImageBitmap))
            End If
        End Using
    End Sub

1 Ответ

0 голосов
/ 01 мая 2020

Вы, кажется, перепутали C# и VB. NET полностью. Если бы вы писали полностью на VB. NET, код был бы:

 Private Sub btnEncode_Click(sender As Object, e As EventArgs)

        Using sfd As SaveFileDialog = New SaveFileDialog() With {.Filter = "JPEG|*.jpg", .ValidateNames = True})

            If sfd.ShowDialog() = DialogResult.OK Then

                Dim encoder As MessagingToolkit.QRCode.Codec().QRCodeEncoder = New MessagingToolkit.QRCode.Codec.QRCodeEncoder()
                encoder.QRCodeScale = 8
                Dim bmp As Bitmap = encoder.Encode(txtEncode.Text)
                PictureBox.Image = bmp
                bmp.Save(sfd.FileName, ImageFormat.Jpeg)
            End If
        End Using
    End Sub

    Private Sub btnDecode_Click(sender As Object, e As EventArgs) Handles Button2.Click

        Using ofd As OpenFileDialog = new OpenFileDialog() With {.Filter = "JPEG|*.jpg", .ValidateNames = True, .Multiselect = False})

            If ofd.ShowDialog() = DialogResult.OK Then
                PictureBox.Image = Image.FromeFile(ofd.FileName)
                Dim decoder As MessagingToolkit.QRCode.Codec.QRCodeDecoder = New MessagingToolkit.QRCode.Codec.QRCodeDecoder()
                txtDecode.Text = decoder.Decode(New QRCodeBitmapImage(PictureBox.ImageBitmap))
            End If
        End Using
    End Sub

, а если вы хотите написать полностью на C#, код был бы:

 private void btnEncode_Click(object sender, EventArgs e)
{
        using (SaveFileDialog sfd = new SaveFileDialog() {Filter = "JPEG|*.jpg", ValidateNames = True})
        {
            if(sfd.ShowDialog() == DialogResult.OK)
            {
                MessagingToolkit.QRCode.Codec().QRCodeEncoder encoder = new MessagingToolkit.QRCode.Codec.QRCodeEncoder();
                encoder.QRCodeScale = 8;
                Bitmap bmp = encoder.Encode(txtEncode.Text);
                PictureBox.Image = bmp;
                bmp.Save(sfd.FileName, ImageFormat.Jpeg);
            }
        }
}

private void btnDecode_Click(object sender, EventArgs e)
{
        using (OpenFileDialog ofd = new OpenFileDialog() { Filter = "JPEG|*.jpg", ValidateNames = true, Multiselect = False})
        {
            if (ofd.ShowDialog() == DialogResult.OK)
            {
                PictureBox.Image = Image.FromeFile(ofd.FileName);
                MessagingToolkit.QRCode.Codec.QRCodeDecoder decoder = New 
                MessagingToolkit.QRCode.Codec.QRCodeDecoder();
                txtDecode.Text = decoder.Decode(New QRCodeBitmapImage(PictureBox.ImageBitmap));
            }
       }
}

Элемент управления PictureBox не имеет атрибута с именем «ImageBitmap», поэтому я не уверен, что вы имели в виду «Image»

...