예제 #1
0
        public async void LoadProfile()
        {
            ImageSource getImage(string uri)
            {
                ApplicationDataContainer localSettings = ApplicationData.Current.LocalSettings;

                if (Convert.ToBoolean(localSettings.Values["IsNoPicsMode"]))
                {
                    if (Convert.ToBoolean(localSettings.Values["IsDarkMode"]))
                    {
                        return new BitmapImage(new Uri("ms-appx:/Assets/img_placeholder_night.png"))
                               {
                                   DecodePixelHeight = 150, DecodePixelWidth = 150
                               }
                    }
                    ;
                    else
                    {
                        return new BitmapImage(new Uri("ms-appx:/Assets/img_placeholder.png"))
                               {
                                   DecodePixelHeight = 150, DecodePixelWidth = 150
                               }
                    };
                }
                return(new BitmapImage(new Uri(uri)));
            }

            JObject detail = await CoolApkSDK.GetUserProfileByID(uid);

            if (!(detail is null))
            {
                UserDetailGrid.DataContext = new
                {
                    UserFace   = getImage(detail["userAvatar"].ToString()),
                    UserName   = detail["username"].ToString(),
                    FollowNum  = detail["follow"].ToString(),
                    FansNum    = detail["fans"].ToString(),
                    Level      = detail["level"].ToString(),
                    bio        = detail["bio"].ToString(),
                    Backgeound = new ImageBrush {
                        ImageSource = getImage(detail["cover"].ToString()), Stretch = Stretch.UniformToFill
                    },
                    verify_title = detail["verify_title"].ToString(),
                    gender       = int.Parse(detail["gender"].ToString()) == 1 ? "♂" : (int.Parse(detail["gender"].ToString()) == 0 ? "♀" : string.Empty),
                    city         = $"{detail["province"].ToString()} {detail["city"].ToString()}",
                    astro        = detail["astro"].ToString(),
                    logintime    = $"{Process.ConvertTime(detail["logintime"].ToString())}活跃"
                };
                TitleTextBlock.Text    = detail["username"].ToString();
                ListHeader.DataContext = new { FeedNum = detail["feed"].ToString() };
            }
예제 #2
0
        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            Button button = sender as Button;

            switch (button.Tag as string)
            {
            case "0":
                Frame.Navigate(typeof(TestPage), mainPage);
                break;

            case "1":
                MainPage.CheckUpdate(true);
                break;

            case "fakeLogin":
                try
                {
                    ApplicationDataContainer localSettings = ApplicationData.Current.LocalSettings;
                    if (string.IsNullOrEmpty(uidTextBox.Text))
                    {
                        localSettings.Values["UserName"] = localSettings.Values["Uid"] = localSettings.Values["UserAvatar"] = string.Empty;
                    }
                    else
                    {
                        string uid = await CoolApkSDK.GetUserIDByName(uidTextBox.Text);

                        JObject r = await CoolApkSDK.GetUserProfileByID(uid);

                        localSettings.Values["UserName"]   = r["username"].ToString();
                        localSettings.Values["Uid"]        = uid;
                        localSettings.Values["UserAvatar"] = r["userAvatar"].ToString();
                    }
                    mainPage.UpdateUserInfo(localSettings);
                }
                catch (Exception ex) { await new MessageDialog($"出现错误,可能是用户名不正确。\n{ex}").ShowAsync(); }
                break;
            }
        }