namespace NeoUI.Assists;
///
/// 提供了对开关控件(ToggleSwitch)的辅助支持,包括设置开关状态文本、是否显示文本以及图标等内容。
/// 通过该类可以方便地扩展和自定义开关控件的行为与外观。
///
public class ToggleSwitchAssist
{
///
/// 获取指定依赖对象的开关处于关闭状态时显示的文本。
///
/// 要获取关闭状态文本的依赖对象。
/// 返回一个字符串,表示开关处于关闭状态时显示的文本。
public static string GetOffText(DependencyObject obj)
{
return (string)obj.GetValue(OffTextProperty);
}
///
/// 设置开关控件在关闭状态时显示的文本。
///
/// 依赖对象,通常为开关控件实例。
/// 要设置的文本值。
public static void SetOffText(DependencyObject obj, string value)
{
obj.SetValue(OffTextProperty, value);
}
///
/// 用于获取或设置开关处于关闭状态时显示的文本。
/// 默认值为"关"。此依赖属性支持动画、样式和数据绑定等功能。
///
public static readonly DependencyProperty OffTextProperty =
DependencyProperty.RegisterAttached("OffText", typeof(string), typeof(ToggleSwitchAssist), new PropertyMetadata("关"));
///
/// 获取指定依赖对象的开关处于开启状态时显示的文本。
///
/// 要获取开启状态文本的依赖对象。
/// 返回一个字符串,表示开关处于开启状态时显示的文本。
public static string GetOnText(DependencyObject obj)
{
return (string)obj.GetValue(OnTextProperty);
}
///
/// 设置指定依赖对象的开关处于开启状态时显示的文本。
///
/// 要设置开启状态文本的依赖对象。
/// 要设置的文本值。
public static void SetOnText(DependencyObject obj, string value)
{
obj.SetValue(OnTextProperty, value);
}
///
/// 用于获取或设置开关处于开启状态时显示的文本。
/// 默认值为"开"。此依赖属性支持动画、样式和数据绑定等功能。
///
public static readonly DependencyProperty OnTextProperty =
DependencyProperty.RegisterAttached("OnText", typeof(string), typeof(ToggleSwitchAssist), new PropertyMetadata("开"));
///
/// 获取指定依赖对象的开关是否显示文本的状态。
///
/// 要获取显示文本状态的依赖对象。
/// 返回一个布尔值,表示开关是否显示文本。如果为true,则显示文本;如果为false,则不显示文本。
public static bool GetShowText(DependencyObject obj)
{
return (bool)obj.GetValue(ShowTextProperty);
}
///
/// 设置指定依赖对象的开关控件是否显示文本。
///
/// 要设置显示文本状态的依赖对象。
/// 布尔值,表示是否显示文本。如果为true,则显示文本;如果为false,则不显示文本。
public static void SetShowText(DependencyObject obj, bool value)
{
obj.SetValue(ShowTextProperty, value);
}
///
/// 用于获取或设置是否显示开关状态文本。
/// 默认值为false。此依赖属性支持动画、样式和数据绑定等功能。
///
public static readonly DependencyProperty ShowTextProperty =
DependencyProperty.RegisterAttached("ShowText", typeof(bool), typeof(ToggleSwitchAssist), new PropertyMetadata(false));
///
/// 获取指定依赖对象的开关处于关闭状态时的内容。
///
/// 要获取关闭状态内容的依赖对象。
/// 返回一个对象,表示开关处于关闭状态时显示的内容。
public static object GetOffContent(DependencyObject obj)
{
return (object)obj.GetValue(OffContentProperty);
}
///
/// 设置指定依赖对象的开关处于关闭状态时显示的内容。
///
/// 要设置关闭状态内容的依赖对象。
/// 要设置为关闭状态时显示的内容。
public static void SetOffContent(DependencyObject obj, object value)
{
obj.SetValue(OffContentProperty, value);
}
///
/// 用于获取或设置开关处于关闭状态时显示的内容。
/// 默认值为null。此依赖属性支持动画、样式和数据绑定等功能。
///
public static readonly DependencyProperty OffContentProperty =
DependencyProperty.RegisterAttached("OffContent", typeof(object), typeof(ToggleSwitchAssist), new PropertyMetadata(null));
///
/// 获取指定依赖对象的开关处于开启状态时的内容。
///
/// 要获取开启状态内容的依赖对象。
/// 返回一个对象,表示开关处于开启状态时的内容。
public static object GetOnContent(DependencyObject obj)
{
return (object)obj.GetValue(OnContentProperty);
}
///
/// 设置指定依赖对象的开关处于开启状态时显示的内容。
///
/// 要设置开启状态内容的依赖对象。
/// 要设置为开启状态时显示的内容,可以是任何类型的对象,如字符串或UI元素。
public static void SetOnContent(DependencyObject obj, object value)
{
obj.SetValue(OnContentProperty, value);
}
///
/// 用于获取或设置开关处于开启状态时显示的内容。
/// 默认值为null。此依赖属性支持动画、样式和数据绑定等功能。
///
public static readonly DependencyProperty OnContentProperty =
DependencyProperty.RegisterAttached("OnContent", typeof(object), typeof(ToggleSwitchAssist), new PropertyMetadata(null));
}