示例#1
0
 private void InitGraph(IDictionary dict)
 {
     int c = 0;
     foreach (object key in dict.Keys)
     {
         try
         {
             double val = 0d;
             val = Convert.ToDouble(dict[key]);
             PiePiece piece = new PiePiece(key, dict[key]);
             piece.Color = PieColors[c++];
             piece.HighlightColor = _HighlightColor;
             piece.HighlightDuration = _HighlightDuration;
             Pieces.Add(piece);
             if (c >= PieColors.Length)
                 c = 0;
         }
         catch { }
     }
     CalculateValues();
 }
示例#2
0
 private void HandleAction(PieGraphUserActions action, PiePiece piece)
 {
     switch (action)
     {
         case PieGraphUserActions.Highlight:
             HighlightPiece(piece);
             break;
         case PieGraphUserActions.Focus:
             FocusPiece(piece);
             break;
     }
 }
示例#3
0
 private void HighlightPiece(PiePiece piece)
 {
     foreach (PiePiece p in Pieces)
     {
         if (p.Equals(piece))
         {
             if (!p.IsHighlighted)
                 p.Highlight();
         }
         else
             p.Unhighlight();
     }
 }
示例#4
0
 private void FocusPiece(PiePiece piece)
 {
     foreach (PiePiece p in Pieces)
     {
         if (p.Equals(piece))
         {
             if (!p.IsFocused)
                 p.Focus();
         }
         else
             p.Unfocus();
     }
 }