1

私は、画像とテキストをまとめてサーバーにアップロードする Windows Phone アプリケーションに取り組んでいます。

アプリケーションのデバッグ中に問題が発生しました。問題は技術的なようです。私は本当に何をすべきかについての手がかりがありません。

そのため、この問題をここに投稿したいと思いました。誰かがこの問題を解決するのを手伝ってくれるなら、ここで私に提供された助けに本当に感謝しています.

ここで行われている仕事に本当に感謝しています。皆さんがいなければ、私たちは本当にここまで来れなかったでしょう。あなたは私たちに過ちから学ぶ機会を与えてくれます。

再度、感謝します。

私のコードに調整が必要かどうかを確認してください。

エミュレーターでデバッグするたびにポップアップするエラー メッセージは次のとおりです。

プロパティ 'System.Windows.Controls.Primitives.ButtonBase.Click' への割り当てに失敗しました。[行: 41 位置: 250]

初めての投稿なので画像は載せられませんがご容赦ください。

ここで行われている作業に感謝します。

   private void button3_Click(object sender, PhotoResult e)
    {
        if (e.TaskResult == TaskResult.OK)

       //void photoChooserTask_Completed(object sender, PhotoResult e)
        //{

            {
                System.Windows.Media.Imaging.BitmapImage bmp = new System.Windows.Media.Imaging.BitmapImage();
                bmp.SetSource(e.ChosenPhoto);
                image1.Source = bmp;
                byte[] sbytedata = ReadToEnd(e.ChosenPhoto);
                string s = sbytedata.ToString();
                WebClient wc = new WebClient();
                Uri u = new Uri("ftp://ftp.icupload.cs201.com/icupload.cs201.com/images/");
                wc.OpenWriteCompleted += new OpenWriteCompletedEventHandler(wc_OpenWriteCompleted);
                wc.OpenWriteAsync(u, "POST", sbytedata);

            }
        }
        public static void wc_OpenWriteCompleted(object sender, OpenWriteCompletedEventArgs e)
        {
            if (e.Error == null)
            {
                object[] objArr = e.UserState as object[];
                byte[] fileContent = e.UserState as byte[];

                Stream outputStream = e.Result;
                outputStream.Write(fileContent, 0, fileContent.Length);
                outputStream.Flush();
                outputStream.Close();
                string s = e.Result.ToString(); ;

            }
        }
        public static byte[] ReadToEnd(System.IO.Stream stream)
        {
            long originalPosition = stream.Position;
            stream.Position = 0;

            try
            {
                byte[] readBuffer = new byte[4096];

                int totalBytesRead = 0;
                int bytesRead;

                while ((bytesRead = stream.Read(readBuffer, totalBytesRead, readBuffer.Length - totalBytesRead)) > 0)
                {
                    totalBytesRead += bytesRead;

                    if (totalBytesRead == readBuffer.Length)
                    {
                        int nextByte = stream.ReadByte();
                        if (nextByte != -1)
                        {
                            byte[] temp = new byte[readBuffer.Length * 2];
                            Buffer.BlockCopy(readBuffer, 0, temp, 0, readBuffer.Length);
                            Buffer.SetByte(temp, totalBytesRead, (byte)nextByte);
                            readBuffer = temp;
                            totalBytesRead++;
                        }
                    }
                }

                byte[] buffer = readBuffer;
                if (readBuffer.Length != totalBytesRead)
                {
                    buffer = new byte[totalBytesRead];
                    Buffer.BlockCopy(readBuffer, 0, buffer, 0, totalBytesRead);
                }
                return buffer;
            }
            finally
            {
                stream.Position = originalPosition;
            }    

    }

これが41行目です...位置252は「Click = myButton3_Click」です

<Button BorderBrush="#FFFF7300" Content="Capture Photo" FontSize="22" Foreground="#FFFF7300" Height="78" Margin="263,23,-10,0" Name="myButton" VerticalAlignment="Top" Click="button2_Click" FontFamily="Tahoma" BorderThickness="4" />
        <Image Height="275" HorizontalAlignment="Left" Name="image1" Stretch="Fill" VerticalAlignment="Top" Width="269" />
        <Button Content="Comment &amp; Location" Height="72" HorizontalAlignment="Left" Margin="92,599,0,0" Name="button1" VerticalAlignment="Top" Width="294" Foreground="#FFFF7300" OpacityMask="#FFFF7300" BorderBrush="#FF091A08" FontFamily="Tahoma" FontWeight="Normal" Background="Transparent" Click="button1_Click" />
        <Button Content="Select Photo" HorizontalAlignment="Left" Margin="264,107,0,0" Name="button2" Width="202" FontSize="24" Foreground="#FFFF7300" FontFamily="Tahoma" Background="Transparent" BorderBrush="#FFFF7300" BorderThickness="4" Height="78" VerticalAlignment="Top" Click="button2_Click_1" />
        <Button Content="Upload" Height="84" HorizontalAlignment="Left" Margin="272,191,0,0" Name="myButton3" VerticalAlignment="Top" Width="186" BorderBrush="#FFFF7300" BorderThickness="4" FontFamily="Tahoma" FontSize="26" Foreground="#FFFF7300" Click="myButton3_Click" ClickMode="Release" DataContext="{Binding}" />
        <TextBlock Height="200" HorizontalAlignment="Left" Margin="28,290,0,0" Name="textBlock1" Text="" VerticalAlignment="Top" Width="400" FontSize="30" TextTrimming="WordEllipsis" TextWrapping="Wrap" />

ここで言及したすべての変更の後でも、3 つの同じエラーが発生します。

エラー 2 'System.Windows.RoutedEventArgs' には 'ChosenPhoto' の定義が含まれておらず、タイプ 'System.Windows.RoutedEventArgs' の最初の引数を受け入れる拡張メソッド 'ChosenPhoto' が見つかりませんでした (using ディレクティブまたはアセンブリ参照?) C:\Users\Yaseen\Desktop\IC Final\Phone Application\MainPage.xaml.cs 107 41 電話アプリケーション

これらは、button3 構文の直後に来ます

4

2 に答える 2

2

あなたが投稿したコードはエラーメッセージに関連しているとは思いません。

しかし、あなたの問題は同じようです

ここ

そしてここ

于 2012-05-11T10:41:22.693 に答える
1

myButton3_Clickコードビハインドにがのみある場合、XAMLのクリックはに設定されていますbutton3_Click

これらは一致するはずです。

于 2012-05-11T19:21:25.190 に答える