- XAMLFinance.zip
- Common
- XAMLFinanceApp
- XAMLFinanceDataSource
- Dependencies
- Visiblox
- Silverlight
- Visiblox.Charts.dll
- Visiblox.Charts.XML
- WP7
- WPF
- Visiblox.Charts.dll
- Visiblox.Charts.XML
- WP7
- XAMLFinanceSilverlight
- XAMLFinanceWP7
- XAMLFinanceWPF
- TwitterExample.zip
|
using System;
using System.Net;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Diagnostics;
namespace System.Windows.Controls
{
/// <summary>
/// Names and helpers for visual states in the controls.
/// </summary>
internal static class VisualStates
{
#region GroupCommon
/// <summary>
/// Normal state
/// </summary>
public const string StateNormal = "Normal";
/// <summary>
/// MouseOver state
/// </summary>
public const string StateMouseOver = "MouseOver";
/// <summary>
/// Pressed state
/// </summary>
public const string StatePressed = "Pressed";
/// <summary>
/// Disabled state
/// </summary>
public const string StateDisabled = "Disabled";
/// <summary>
/// Common state group
/// </summary>
public const string GroupCommon = "CommonStates";
#endregion GroupCommon
#region GroupExpanded
/// <summary>
/// Expanded state
/// </summary>
public const string StateExpanded = "Expanded";
/// <summary>
/// Collapsed state
/// </summary>
public const string StateCollapsed = "Collapsed";
/// <summary>
/// Empty state
/// </summary>
public const string StateEmpty = "Empty";
#endregion GroupExpanded
#region GroupFocus
/// <summary>
/// Unfocused state
/// </summary>
public const string StateUnfocused = "Unfocused";
/// <summary>
/// Focused state
/// </summary>
public const string StateFocused = "Focused";
/// <summary>
/// Focus state group
/// </summary>
public const string GroupFocus = "FocusStates";
#endregion GroupFocus
#region GroupSelection
/// <summary>
/// Selected state
/// </summary>
public const string StateSelected = "Selected";
/// <summary>
/// Unselected state
/// </summary>
public const string StateUnselected = "Unselected";
/// <summary>
/// Selection state group
/// </summary>
public const string GroupSelection = "SelectionStates";
#endregion GroupSelection
#region GroupActive
/// <summary>
/// Active state
/// </summary>
public const string StateActive = "Active";
/// <summary>
/// Inactive state
/// </summary>
public const string StateInactive = "Inactive";
/// <summary>
/// Active state group
/// </summary>
public const string GroupActive = "ActiveStates";
#endregion GroupActive
#region GroupCurrent
/// <summary>
/// Regular state
/// </summary>
public const string StateRegular = "Regular";
/// <summary>
/// Current state
/// </summary>
public const string StateCurrent = "Current";
/// <summary>
/// Current state group
/// </summary>
public const string GroupCurrent = "CurrentStates";
#endregion GroupCurrent
#region GroupInteraction
/// <summary>
/// Display state
/// </summary>
public const string StateDisplay = "Display";
/// <summary>
/// Editing state
/// </summary>
public const string StateEditing = "Editing";
/// <summary>
/// Interaction state group
/// </summary>
public const string GroupInteraction = "InteractionStates";
#endregion GroupInteraction
#region GroupAlternatingRow
/// <summary>
/// Regular Row state
/// </summary>
public const string StateRegularRow = "RegularRow";
/// <summary>
/// Alternating Row state
/// </summary>
public const string StateAlternatingRow = "AlternatingRow";
/// <summary>
/// Alternating Row state group
/// </summary>
public const string GroupAlternatingRow = "AlternatingRowStates";
#endregion GroupAlternatingRow
#region GroupSort
/// <summary>
/// Unsorted state
/// </summary>
public const string StateUnsorted = "Unsorted";
/// <summary>
/// Sort Ascending state
/// </summary>
public const string StateSortAscending = "SortAscending";
/// <summary>
/// Sort Descending state
/// </summary>
public const string StateSortDescending = "SortDescending";
/// <summary>
/// Sort state group
/// </summary>
public const string GroupSort = "SortStates";
#endregion GroupSort
#region GroupValidation
/// <summary>
/// Invalid state
/// </summary>
public const string StateInvalid = "Invalid";
/// <summary>
/// RowInvalid state
/// </summary>
public const string StateRowInvalid = "RowInvalid";
/// <summary>
/// RowValid state
/// </summary>
public const string StateRowValid = "RowValid";
/// <summary>
/// Valid state
/// </summary>
public const string StateValid = "Valid";
/// <summary>
/// Validation state group
/// </summary>
public const string GroupValidation = "ValidationStates";
#endregion GroupValidation
/// <summary>
/// Use VisualStateManager to change the visual state of the control.
/// </summary>
/// <param name="control">
/// Control whose visual state is being changed.
/// </param>
/// <param name="useTransitions">
/// true to use transitions when updating the visual state, false to
/// snap directly to the new visual state.
/// </param>
/// <param name="stateNames">
/// Ordered list of state names and fallback states to transition into.
/// Only the first state to be found will be used.
/// </param>
public static void GoToState(Control control, bool useTransitions, params string[] stateNames)
{
Debug.Assert(control != null);
if (stateNames == null)
{
return;
}
foreach (string name in stateNames)
{
if (VisualStateManager.GoToState(control, name, useTransitions))
{
break;
}
}
}
public static FrameworkElement GetImplementationRoot(DependencyObject dependencyObject)
{
Debug.Assert(dependencyObject != null, "DependencyObject should not be null.");
return (1 == VisualTreeHelper.GetChildrenCount(dependencyObject)) ?
VisualTreeHelper.GetChild(dependencyObject, 0) as FrameworkElement :
null;
}
/// <summary>
/// This method tries to get the named VisualStateGroup for the
/// dependency object. The provided object's ImplementationRoot will be
/// looked up in this call.
/// </summary>
/// <param name="dependencyObject">The dependency object.</param>
/// <param name="groupName">The visual state group's name.</param>
/// <returns>Returns null or the VisualStateGroup object.</returns>
public static VisualStateGroup TryGetVisualStateGroup(DependencyObject dependencyObject, string groupName)
{
FrameworkElement root = GetImplementationRoot(dependencyObject);
if (root == null)
{
return null;
}
return VisualStateManager.GetVisualStateGroups(root)
.OfType<VisualStateGroup>()
.Where(group => string.CompareOrdinal(groupName, group.Name) == 0)
.FirstOrDefault();
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.