0

こんにちは、どこから始めればいいのかわかりません。私はいくつかの小道具を追加します(その前に私のコードは正常に実行されます)。

System.Diagnostics.Debugger.Break();

それで、私はその変更についてコメントしますが、それは役に立ちませんでした。

どこから解決策を探すべきか教えていただけますか?

マイコード:

namespace SkydriveContent
{
    public partial class MainPage : PhoneApplicationPage
    {
        private LiveConnectClient client;
        FilesManager fileManager = new FilesManager();
        // Constructor
        public MainPage()
        {
            InitializeComponent();
        }

        private void signInButton1_SessionChanged(object sender, LiveConnectSessionChangedEventArgs e)
        {

            if (e.Status == LiveConnectSessionStatus.Connected)
            {


                client = new LiveConnectClient(e.Session);
                infoTextBlock.Text = "Signed in.";
                client.GetCompleted +=
                    new EventHandler<LiveOperationCompletedEventArgs>(OnGetCompleted);
                client.GetAsync("/me/skydrive/files/");
                fileManager.CurrentFolderId = "/me/skydrive/files/"; 
            }
            else
            {
                infoTextBlock.Text = "Not signed in.";
                client = null;
            }
        }

        void OnGetCompleted(object sender, LiveOperationCompletedEventArgs e)
        {
            //Gdy uda nam się podłaczyc do konta skydrive
            if (e.Error == null)
            {
                signInButton1.Visibility = System.Windows.Visibility.Collapsed;



                    infoTextBlock.Text = "Hello, signed-in user!";


                List<object> data = (List<object>)e.Result["data"];


                fileManager.FilesNames.Clear();
                filemanager.filesnames.add("..");
                foreach (IDictionary<string,object> item in data)
                {

                    File file = new File();              

                    file.fName = item["name"].ToString();
                    file.Type = item["type"].ToString();
                    file.Url = item["link"].ToString();
                    file.ParentId = item["parent_id"].ToString();
                    file.Id = item["id"].ToString();  

                    fileManager.Files.Add(file);
                    fileManager.FilesNames.Add(file.fName);

                }

                FileList.ItemsSource = fileManager.FilesNames;               
            }
            else
            {
                infoTextBlock.Text = "Error calling API: " +
                    e.Error.ToString();
            }
        }

        private void FileList_Tap(object sender, GestureEventArgs e)
        {
            foreach (File item  in fileManager.Files)
            {
                if (item.fName == FileList.SelectedItem.ToString() )
                {
                    switch (item.Type)
                    { 
                        case "file":
                            MessageBox.Show("Still in progress");

                            break;
                        case "folder":

                            fileManager.CurrentFolderId = item.ParentId.ToString(); 
                            client.GetAsync(item.Id.ToString() + "/files");

                            break;
                        default:
                            MessageBox.Show("Coś nie działa");
                            break;
                    }
                }
                else if (FileList.SelectedItem.ToString() == "..")
                {
                    client.GetAsync(fileManager.CurrentFolderId + "/files");
                }
            }
        }
    }
}

そのラインでランニングストップ。

// Code to execute if a navigation fails
        private void RootFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)
        {
            if (System.Diagnostics.Debugger.IsAttached)
            {
                // A navigation has failed; break into the debugger
                System.Diagnostics.Debugger.Break();
            }
        }
4

2 に答える 2

0

XAML とコードの両方にあるすべての URL を確認する必要があります。NavigationFailed 関数に到達すると、電話機が存在しないページに移動しようとしたことを意味します。アプリが例外をスローしたときに何をしていたかを教えていただければ、より多くのことを支援できます。

于 2012-06-03T14:59:39.190 に答える
0
System.Diagnostics.Debugger.Break();

通常、Uncaught Exception が原因で発生します。 問題が発生し始めたコード
を 投稿するか、この問題が発生したときのスタック トレースを投稿してください。 あなたが何をしているかを実際に見なければ、誰も何も言えません。

于 2012-06-03T10:48:19.397 に答える