Exemplo n.º 1
0
        private void ToggleButton_Click(object sender, RoutedEventArgs e)                             //点赞
        {
            if (User.UserId == null)
            {
                tipWindow warning = new tipWindow("请先登录");
                warning.ShowDialog();
                return;
            }

            var           curItem = ((ListBoxItem)AnsItem.ContainerFromElement((System.Windows.Controls.Primitives.ToggleButton)sender)).Content;
            DisplayAnswer disp    = curItem as DisplayAnswer;

            if (disp.UserId == User.UserId)
            {
                tipWindow warning = new tipWindow("无法给自己点赞");
                warning.ShowDialog();
                return;
            }
            bool success = User.Like(disp.AnswerId);

            if (success)
            {
                foreach (DisplayAnswer da in DisplayAnswers)
                {
                    if (da.AnswerId == disp.AnswerId)
                    {
                        disp.Like++;
                    }
                }
                foreach (Answer a in QuestionList[CurrentQuesIndex].Answers)
                {
                    if (a.AnswerId == disp.AnswerId)
                    {
                        a.Like++;
                    }
                }

                this.AnsItem.ItemsSource = null;
                this.AnsItem.ItemsSource = this.DisplayAnswers;
            }
            else
            {
                tipWindow warning = new tipWindow("已经点过赞了");
                warning.ShowDialog();
                return;
            }
        }
Exemplo n.º 2
0
        private void Adopt_btn_Click(object sender, RoutedEventArgs e)                       //采纳按钮
        {
            var           curItem = ((ListBoxItem)AnsItem.ContainerFromElement((Button)sender)).Content;
            DisplayAnswer disp    = curItem as DisplayAnswer;
            bool          success = User.Adopt(disp.AnswerId, CurrentQuestion.QuestionId);

            if (success == true)
            {
                foreach (DisplayAnswer a in DisplayAnswers)
                {
                    a.ShowAdoptBtn = false;
                    if (a.AnswerId == disp.AnswerId)
                    {
                        a.IsAdopted = true;
                    }
                }
                QuestionList[QuesItem.SelectedIndex].Solved = true;
                foreach (Answer a in QuestionList[QuesItem.SelectedIndex].Answers)
                {
                    if (a.AnswerId == disp.AnswerId)
                    {
                        a.IsAdopted = true;
                    }
                }
                this.QuesItem.ItemsSource = null;
                this.AnsItem.ItemsSource  = null;
                this.AnsItem.ItemsSource  = this.DisplayAnswers;
                this.QuesItem.ItemsSource = this.QuestionList;
            }
            else
            {
                tipWindow warning = new tipWindow("未知错误");
                warning.ShowDialog();
                return;
            }
        }
Exemplo n.º 3
0
        void InitLeftPanel()
        {
            //left panel
            spLp.HorizontalAlignment = HorizontalAlignment.Left;
            spLp.Background          = Theme.s._[(int)BrushId.LeftPanel_BG];
            //title
            Label l = new Label();

            gAnsSh.Background = Theme.s._[(int)BrushId.Sheet_BG];
            int nAns = 4;//hardcode
            int i = 0, n = mQSh.Items.Count;

            AnsItem.SInit(Window.GetWindow(this).FontSize);
            mNee.mAnsSh.Init(mQSh.LvId);
            mNee.mAnsSh.InitView(mQSh, qaWh, null);
            mNee.mAnsSh.bChanged = false;
            //top line
            gAnsSh.RowDefinitions.Add(new RowDefinition());
            l = new Label();
            Grid.SetRow(l, 0);
            Grid.SetColumn(l, 0);
            gAnsSh.Children.Add(l);
            SolidColorBrush brBK = new SolidColorBrush(Colors.Black);

            for (i = 1; i < nAns; ++i)
            {
                l                            = new Label();
                l.Content                    = (char)('@' + i);
                l.BorderBrush                = brBK;
                l.BorderThickness            = Theme.s.l[(int)ThicknessId.MT];
                l.HorizontalContentAlignment = HorizontalAlignment.Center;
                l.FontWeight                 = FontWeights.Bold;
                Grid.SetRow(l, 0);
                Grid.SetColumn(l, i);
                gAnsSh.Children.Add(l);
            }
            l                            = new Label();
            l.BorderBrush                = brBK;
            l.BorderThickness            = Theme.s.l[(int)ThicknessId.RT];
            l.HorizontalContentAlignment = HorizontalAlignment.Center;
            l.Content                    = (char)('@' + i);
            l.FontWeight                 = FontWeights.Bold;
            Grid.SetRow(l, 0);
            Grid.SetColumn(l, i);
            gAnsSh.Children.Add(l);
            //next lines
            //n -= 1;
            int j = 1;

            for (; j < n; ++j)
            {
                gAnsSh.RowDefinitions.Add(new RowDefinition());
                l                            = new Label();
                l.Content                    = j;
                l.BorderBrush                = brBK;
                l.BorderThickness            = Theme.s.l[(int)ThicknessId.MT];
                l.HorizontalContentAlignment = HorizontalAlignment.Center;
                l.FontWeight                 = FontWeights.Bold;
                Grid.SetRow(l, j);
                Grid.SetColumn(l, 0);
                gAnsSh.Children.Add(l);
                for (i = 1; i < nAns; ++i)
                {
                    l                            = mNee.mAnsSh.vAnsItem[j - 1][i - 1].lbl;
                    l.BorderBrush                = brBK;
                    l.BorderThickness            = Theme.s.l[(int)ThicknessId.MT];
                    l.HorizontalContentAlignment = HorizontalAlignment.Center;
                    l.VerticalContentAlignment   = VerticalAlignment.Top;
                    Grid.SetRow(l, j);
                    Grid.SetColumn(l, i);
                    gAnsSh.Children.Add(l);
                }
                l                            = l = mNee.mAnsSh.vAnsItem[j - 1][i - 1].lbl;
                l.BorderBrush                = brBK;
                l.BorderThickness            = Theme.s.l[(int)ThicknessId.RT];
                l.HorizontalContentAlignment = HorizontalAlignment.Center;
                Grid.SetRow(l, j);
                Grid.SetColumn(l, i);
                gAnsSh.Children.Add(l);
            }
            //bottom lines
            gAnsSh.RowDefinitions.Add(new RowDefinition());
            l                            = new Label();
            l.Content                    = j;
            l.BorderBrush                = brBK;
            l.BorderThickness            = Theme.s.l[(int)ThicknessId.LB];
            l.HorizontalContentAlignment = HorizontalAlignment.Center;
            l.FontWeight                 = FontWeights.Bold;
            Grid.SetRow(l, j);
            Grid.SetColumn(l, 0);
            gAnsSh.Children.Add(l);
            for (i = 1; i < nAns; ++i)
            {
                l                            = mNee.mAnsSh.vAnsItem[j - 1][i - 1].lbl;
                l.BorderBrush                = brBK;
                l.BorderThickness            = Theme.s.l[(int)ThicknessId.MB];
                l.HorizontalContentAlignment = HorizontalAlignment.Center;
                Grid.SetRow(l, j);
                Grid.SetColumn(l, i);
                gAnsSh.Children.Add(l);
            }
            l                            = mNee.mAnsSh.vAnsItem[j - 1][i - 1].lbl;
            l.BorderBrush                = brBK;
            l.BorderThickness            = Theme.s.l[(int)ThicknessId.RB];
            l.HorizontalContentAlignment = HorizontalAlignment.Center;
            Grid.SetRow(l, j);
            Grid.SetColumn(l, i);
            gAnsSh.Children.Add(l);

            //for (j = Question.svQuest[0].Count; -1 < j; --j)
            //    gAnsSh.RowDefinitions[j].Height = new GridLength(32, GridUnitType.Pixel);
        }