Switch 开关
原创2024年3月18日大约 2 分钟
按钮样式
提示
添加ToggleButtonAsButtonStyle
样式应用
<ToggleButton nl:ButtonAssist.Type="Primary"
Content="Primary"
Style="{StaticResource ToggleButtonAsButtonStyle}" />
样式效果与Button
一致,详情请看Button说明。
Switch样式
提示
添加ToggleButtonAsSwitchStyle
样式应用
颜色
使用SwitchOffBackground
和SwitchOnBackground
属性控制切换背景颜色
![SwitchBackground](https://nas.ilyl.life:8092/wpf-theme/toggle-button/togglebutton-color.gif)
<ToggleButton Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton nl:ToggleButtonAssist.SwitchOffBackground="#ff4949"
nl:ToggleButtonAssist.SwitchOnBackground="#13ce66"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
尺寸
通过Size
控制ToggleButton大小,默认提供三种效果选项Small
、Default
以及Large
![Size](https://nas.ilyl.life:8092/wpf-theme/toggle-button/togglebutton-size.gif)
<ToggleButton nl:ToggleButtonAssist.ActiveText="Open"
nl:ToggleButtonAssist.InactiveText="Close"
nl:ToggleButtonAssist.Size="Large"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton nl:ToggleButtonAssist.ActiveText="Open"
nl:ToggleButtonAssist.InactiveText="Close"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton nl:ToggleButtonAssist.ActiveText="Open"
nl:ToggleButtonAssist.InactiveText="Close"
nl:ToggleButtonAssist.Size="Small"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
文字描述
使用ActiveText
属性与InactiveText
属性来设置开关的文字描述。
![text](https://nas.ilyl.life:8092/wpf-theme/toggle-button/togglebutton-text.gif)
<ToggleButton nl:ToggleButtonAssist.ActiveText="Pay by month"
nl:ToggleButtonAssist.InactiveText="Pay by year"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton nl:ToggleButtonAssist.ActiveText="Pay by month"
nl:ToggleButtonAssist.InactiveText="Pay by year"
nl:ToggleButtonAssist.SwitchOffBackground="#ff4949"
nl:ToggleButtonAssist.SwitchOnBackground="#13ce66"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
使用InlinePrompt
属性来控制文本是否显示在点内。
![inlineprompt](https://nas.ilyl.life:8092/wpf-theme/toggle-button/togglebutton-inlineprompt.gif)
<ToggleButton nl:ToggleButtonAssist.ActiveText="是"
nl:ToggleButtonAssist.InactiveText="否"
nl:ToggleButtonAssist.InlinePrompt="True"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton nl:ToggleButtonAssist.ActiveText="Y"
nl:ToggleButtonAssist.InactiveText="N"
nl:ToggleButtonAssist.InlinePrompt="True"
nl:ToggleButtonAssist.SwitchOffBackground="#ff4949"
nl:ToggleButtonAssist.SwitchOnBackground="#13ce66"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton Width="60"
nl:ToggleButtonAssist.ActiveText="超出内容"
nl:ToggleButtonAssist.InactiveText="超出内容"
nl:ToggleButtonAssist.InlinePrompt="True"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton nl:ToggleButtonAssist.ActiveText="完整展示多个内容"
nl:ToggleButtonAssist.InactiveText="多个内容"
nl:ToggleButtonAssist.InlinePrompt="True"
nl:ToggleButtonAssist.Size="Large"
nl:ToggleButtonAssist.SwitchOffBackground="#ff4949"
nl:ToggleButtonAssist.SwitchOnBackground="#13ce66"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
显示自定义图标
使用InactiveIcon
和ActiveIcon
属性来添加图标。 使用InlinePrompt
属性来控制图标显示在点内。
![icon](https://nas.ilyl.life:8092/wpf-theme/toggle-button/togglebutton-icon.gif)
<ToggleButton nl:ToggleButtonAssist.ActiveIcon="{DynamicResource check-icon}"
nl:ToggleButtonAssist.InactiveIcon="{DynamicResource close-icon}"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton nl:ToggleButtonAssist.ActiveIcon="{DynamicResource check-icon}"
nl:ToggleButtonAssist.InactiveIcon="{DynamicResource close-icon}"
nl:ToggleButtonAssist.InlinePrompt="True"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
禁用状态
设置原生IsEnabled
属性,接受一个Boolean,设置false即可禁用。
![isenabled](https://nas.ilyl.life:8092/wpf-theme/toggle-button/togglebutton-isenabled.gif)
<ToggleButton IsChecked="True"
IsEnabled="False"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
加载状态
设置Loading
属性,接受一个Boolean,设置true即加载中状态。
![loading](https://nas.ilyl.life:8092/wpf-theme/toggle-button/togglebutton-loading.gif)
<ToggleButton nl:ToggleButtonAssist.Loading="True"
IsChecked="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
<ToggleButton nl:ToggleButtonAssist.Loading="True"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />
自定义动作图标
使用InactiveActionIcon
和ActiveActionIcon
属性来添加图标。
![actionicon](https://nas.ilyl.life:8092/wpf-theme/toggle-button/togglebutton-actionicon.gif)
<ToggleButton nl:ToggleButtonAssist.ActiveActionIcon="{DynamicResource active-action-icon}"
nl:ToggleButtonAssist.InactiveActionIcon="{DynamicResource inactive-action-icon}"
Style="{StaticResource ToggleButtonAsSwitchStyle}" />