Files
ShrlAlgoToolkit/MelskinTest/MainWindow.xaml

1148 lines
61 KiB
Plaintext
Raw Normal View History

2026-01-02 17:30:41 +08:00
<ms:MelWindow
2026-02-12 21:29:00 +08:00
Height="800"
Icon="/Resources/Images/ImageTest.png"
Loaded="Window_Loaded"
Selector.SelectionChanged="TabControl_SelectionChanged"
Title="样式示例"
Width="1000"
WindowStartupLocation="CenterScreen"
d:DataContext="{d:DesignInstance Type=test:MainWindow}"
d:Height="Auto"
d:SizeToContent="WidthAndHeight"
mc:Ignorable="d"
2026-02-17 22:17:23 +08:00
x:Class="MelskinTest.MainWindow"
2025-08-20 12:10:13 +08:00
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
2026-02-17 22:17:23 +08:00
xmlns:dm="clr-namespace:MelskinTest.DataModel"
2025-08-24 13:49:55 +08:00
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
2025-08-20 12:10:13 +08:00
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
2026-01-02 17:30:41 +08:00
xmlns:ms="https://github.com/ShrlAlgo/Melskin"
2025-08-20 12:10:13 +08:00
xmlns:sys="clr-namespace:System;assembly=mscorlib"
2026-02-17 22:17:23 +08:00
xmlns:test="clr-namespace:MelskinTest"
2026-02-12 21:29:00 +08:00
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
2025-08-12 23:08:54 +08:00
2026-01-02 17:30:41 +08:00
<ms:MelWindow.TitleBarLeftContent>
2025-08-20 12:10:35 +08:00
<Menu>
<MenuItem Header="文件">
<MenuItem Header="打开" />
<MenuItem Header="打开最近文件...">
<MenuItem Header="文件01" />
<MenuItem Header="文件02" />
<MenuItem Header="文件03" />
2025-07-31 20:12:24 +08:00
</MenuItem>
2025-08-20 12:10:35 +08:00
<Separator />
<MenuItem Header="保存" />
<MenuItem Header="另存为..." />
</MenuItem>
2025-08-12 23:08:54 +08:00
2025-08-20 12:10:35 +08:00
<MenuItem Header="编辑">
<MenuItem Header="删除" />
2025-08-12 23:08:54 +08:00
<MenuItem
2025-08-20 12:10:35 +08:00
Header="编辑模式"
2025-08-12 23:08:54 +08:00
IsCheckable="True"
IsChecked="True" />
2025-08-20 12:10:35 +08:00
</MenuItem>
<MenuItem
Header="复选"
IsCheckable="True"
IsChecked="True" />
<MenuItem Header="帮助">
<MenuItem Header="关于" />
</MenuItem>
</Menu>
2026-01-02 17:30:41 +08:00
</ms:MelWindow.TitleBarLeftContent>
<ms:MelWindow.TitleBarRightContent>
2025-08-20 12:10:35 +08:00
<UniformGrid Rows="1">
<ComboBox
2025-08-24 13:49:55 +08:00
SelectionChanged="PrimaryColorSelectComboBox_SelectionChanged"
2026-02-12 21:29:00 +08:00
Style="{StaticResource FlattenComboBoxStyle}"
VerticalContentAlignment="Center"
x:Name="PrimaryColorSelectComboBox">
2025-08-20 12:10:35 +08:00
<ComboBoxItem>
<Rectangle
2025-08-24 13:49:55 +08:00
Fill="#2C63F2"
2026-02-12 21:29:00 +08:00
Height="20"
2025-08-20 12:10:35 +08:00
RadiusX="4"
2026-02-12 21:29:00 +08:00
RadiusY="4"
Width="30" />
2025-08-20 12:10:35 +08:00
</ComboBoxItem>
<ComboBoxItem>
<Rectangle
2025-08-24 13:49:55 +08:00
Fill="#2E3F36"
2026-02-12 21:29:00 +08:00
Height="20"
2025-08-20 12:10:35 +08:00
RadiusX="4"
2026-02-12 21:29:00 +08:00
RadiusY="4"
Width="30" />
2025-08-20 12:10:35 +08:00
</ComboBoxItem>
<ComboBoxItem>
<Rectangle
2025-08-24 13:49:55 +08:00
Fill="#3C2A59"
2026-02-12 21:29:00 +08:00
Height="20"
2025-08-20 12:10:35 +08:00
RadiusX="4"
2026-02-12 21:29:00 +08:00
RadiusY="4"
Width="30" />
2025-08-20 12:10:35 +08:00
</ComboBoxItem>
</ComboBox>
2026-01-02 17:30:41 +08:00
<ms:ToggleSwitch
2025-08-20 12:10:35 +08:00
Checked="ThemeToggle_OnCheckedChanged"
2025-12-23 21:35:54 +08:00
Style="{StaticResource SlotToggleSwitch}"
2026-02-12 21:29:00 +08:00
Unchecked="ThemeToggle_OnCheckedChanged"
ms:ControlAssist.OffContent="{ms:Icon Nightlight}"
ms:ControlAssist.OnContent="{ms:Icon Sunny}" />
2025-08-20 12:10:35 +08:00
</UniformGrid>
2026-01-02 17:30:41 +08:00
</ms:MelWindow.TitleBarRightContent>
<ms:MelWindow.Resources>
2025-07-31 20:12:24 +08:00
<ResourceDictionary>
2026-02-12 21:29:00 +08:00
<test:MainViewModel x:Key="MainViewModel" />
2025-07-31 20:12:24 +08:00
<!-- <ResourceDictionary.MergedDictionaries> -->
<!-- <enu:ThemesDictionary Theme="Dark" /> -->
<!-- <enu:ControlsDictionary /> -->
<!-- </ResourceDictionary.MergedDictionaries> -->
<dm:DataGridDemo x:Key="Dgd" />
<ContextMenu x:Key="ContextMenuDemo">
<MenuItem Header="菜单01" />
<MenuItem Header="菜单02" />
<Separator />
<MenuItem Header="菜单03">
<MenuItem Header="菜单A1" />
<MenuItem Header="菜单A2" />
<Separator />
<MenuItem Header="菜单A3" />
</MenuItem>
</ContextMenu>
2025-08-24 13:49:55 +08:00
2025-07-31 20:12:24 +08:00
</ResourceDictionary>
2025-08-24 13:49:55 +08:00
2026-01-02 17:30:41 +08:00
</ms:MelWindow.Resources>
2025-07-31 20:12:24 +08:00
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto" />
<RowDefinition Height="*" />
<RowDefinition Height="24" />
</Grid.RowDefinitions>
2025-08-12 23:08:54 +08:00
<!-- 工具栏 -->
2025-07-31 20:12:24 +08:00
<ToolBarTray Margin="4,4,4,0">
2025-08-12 23:08:54 +08:00
<ToolBar Foreground="{DynamicResource PrimaryFocusedBrush}" Header="工具栏">
2025-07-31 20:12:24 +08:00
<Button Click="Switch_OnClick" Content="切换主题" />
<ToggleButton Content="切换" />
<Separator />
<RadioButton Content="单选框A" IsChecked="True" />
<RadioButton Content="单选框B" />
2026-02-12 21:29:00 +08:00
<TextBox Text="文本框" Width="100" />
2025-07-31 20:12:24 +08:00
<CheckBox Content="复选框" />
<Separator />
2026-02-12 21:29:00 +08:00
<ComboBox SelectedIndex="0" Width="100">
2025-07-31 20:12:24 +08:00
<ComboBoxItem Content="选项01" />
<ComboBoxItem Content="选项02" />
<ComboBoxItem Content="选项03" />
</ComboBox>
</ToolBar>
2025-08-12 23:08:54 +08:00
<ToolBar Foreground="{DynamicResource PrimaryFocusedBrush}" Header="工具栏">
<Button
Click="Test_OnClick"
2026-02-12 21:29:00 +08:00
Content="测试窗口"
x:Name="Test" />
2025-08-20 12:10:13 +08:00
<Button Click="Icon_OnClick" Content="图标" />
<Button Click="ColorPalette_OnClick" Content="配色" />
2025-12-28 11:47:54 +08:00
<Button Click="ShowNeumorphism_Click" Content="Neumorphism" />
2025-07-31 20:12:24 +08:00
</ToolBar>
</ToolBarTray>
2026-01-02 17:30:41 +08:00
<ms:Anchor Grid.Row="1" Margin="4">
<ms:StackPanel Spacing="5">
<StackPanel ms:ControlAssist.AnchorHeaderText="警告提示 Alert">
2025-08-12 23:08:54 +08:00
<StackPanel>
2026-02-12 21:29:00 +08:00
<CheckBox Content="标题" x:Name="IsBanner" />
2026-01-02 17:30:41 +08:00
<ms:Alert
2025-08-12 23:08:54 +08:00
Banner="{Binding ElementName=IsBanner, Path=IsChecked}"
Description="这是一个信息提示框。"
2026-02-12 21:29:00 +08:00
Margin="5"
2025-08-12 23:08:54 +08:00
Message="信息" />
2026-01-02 17:30:41 +08:00
<ms:Alert
2025-08-12 23:08:54 +08:00
Banner="{Binding ElementName=IsBanner, Path=IsChecked}"
Description="这是一个成功提示框。"
2026-02-12 21:29:00 +08:00
Margin="5"
2025-08-12 23:08:54 +08:00
Message="成功"
Type="Success" />
2026-01-02 17:30:41 +08:00
<ms:Alert
2025-08-12 23:08:54 +08:00
Banner="{Binding ElementName=IsBanner, Path=IsChecked}"
Closable="True"
2025-08-12 23:08:54 +08:00
Description="这是一个警告提示框。"
2026-02-12 21:29:00 +08:00
Margin="5"
2025-08-12 23:08:54 +08:00
Message="警告"
Type="Warning" />
2026-01-02 17:30:41 +08:00
<ms:Alert
2025-08-12 23:08:54 +08:00
Banner="{Binding ElementName=IsBanner, Path=IsChecked}"
Description="这是一个错误提示框。"
2026-02-12 21:29:00 +08:00
Margin="5"
2025-08-12 23:08:54 +08:00
Message="错误"
Type="Error" />
</StackPanel>
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="通知 Toast">
2025-08-12 23:08:54 +08:00
<StackPanel>
2025-07-31 20:12:24 +08:00
<StackPanel Orientation="Horizontal">
<TextBlock
Margin="5"
2026-02-12 21:29:00 +08:00
Text="Notification:"
VerticalAlignment="Center" />
2025-09-12 09:55:36 +08:00
<Button Click="LeftTopButton_Click" Content="左上" />
<Button Click="RightTopButton_Click" Content="右上" />
<Button Click="LeftBottomButton_Click" Content="左下" />
<Button Click="RightBottomButton_Click" Content="右下" />
2025-07-31 20:12:24 +08:00
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock
Margin="5"
2026-02-12 21:29:00 +08:00
Text="Toast:"
VerticalAlignment="Center" />
2025-09-12 09:55:36 +08:00
<Button Click="Info_Click" Content="Info" />
<Button Click="Success_Click" Content="Success" />
<Button Click="Warning_Click" Content="Warning" />
<Button Click="Error_Click" Content="Error" />
2025-07-31 20:12:24 +08:00
</StackPanel>
2025-08-12 23:08:54 +08:00
<StackPanel Orientation="Horizontal">
<TextBlock
Margin="5"
2026-02-12 21:29:00 +08:00
Text="Modal:"
VerticalAlignment="Center" />
2025-12-23 21:35:54 +08:00
<Button Click="ShowBasicModal_Click" Content="确认模态框" />
2025-09-12 09:55:36 +08:00
<Button Click="ShowAsyncModal_Click" Content="异步模态框" />
2025-12-23 21:35:54 +08:00
<Button Click="ShowInfoModal_Click" Content="消息模态框" />
2025-08-12 23:08:54 +08:00
</StackPanel>
</StackPanel>
</StackPanel>
2025-08-20 12:10:13 +08:00
2026-01-02 17:30:41 +08:00
<ms:FlexibleRowPanel ms:ControlAssist.AnchorHeaderText="文字 Text">
<ms:CodeBox Title="代码块">
<ms:CodeBox.Description>代码块基本使用</ms:CodeBox.Description>
<ms:CodeBox.Content>
<ms:FlexibleRowPanel LayoutMode="Auto">
<ms:Heading Size="ExtraLarge" Text="ExtraLarge" />
<ms:Heading Size="Large" Text="Large" />
<ms:Heading Size="Medium" Text="Medium" />
<ms:Heading Size="Normal" Text="Normal" />
<ms:Heading Size="Small" Text="Small" />
<ms:Heading Size="Tiny" Text="Tiny" />
</ms:FlexibleRowPanel>
</ms:CodeBox.Content>
<ms:CodeBox.Code>
&lt;ResourceDictionary Source="pack://application:,,,/Antd;component/Styles/Theme.xaml" /&gt;\ms
&lt;ResourceDictionary Source="pack://application:,,,/Antd;component/Styles/AntIcons.xaml" /&gt;\ms\ms
xmlns:Antd="clr-namespace:Antd.Controls;assembly=antd"\ms\ms
&lt;WrapPanel&gt;\ms
\t&lt;Antd:Tag&gt;Tag 1&lt;/Antd:Tag&gt;\ms
\t&lt;Antd:Tag&gt;Link&lt;/Antd:Tag&gt;\ms
\t&lt;Antd:Tag Closable="True"&gt;Tag 2&lt;/Antd:Tag&gt;\ms
\t&lt;Antd:Tag Closable="True" cal:Message.Attach="[Event Closing] = [Action Closing($source, $eventArgs)]"&gt;Prevent Default&lt;/Antd:Tag&gt;\ms
2025-08-20 12:10:13 +08:00
&lt;/WrapPanel&gt;
2026-01-02 17:30:41 +08:00
</ms:CodeBox.Code>
</ms:CodeBox>
2025-08-20 12:10:13 +08:00
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
<StackPanel ms:ControlAssist.AnchorHeaderText="分隔条 Divider">
2026-02-12 21:29:00 +08:00
<ms:Divider Content="Text" Margin="0,16" />
2026-01-02 17:30:41 +08:00
<ms:Divider
2025-08-24 13:49:55 +08:00
Content="Left Text"
2026-02-12 21:29:00 +08:00
Margin="0,16"
2025-08-12 23:08:54 +08:00
TextOrientation="Left" />
2026-01-02 17:30:41 +08:00
<ms:Divider
2025-08-24 13:49:55 +08:00
Content="Right Text"
2026-02-12 21:29:00 +08:00
Margin="0,16"
2025-08-12 23:08:54 +08:00
TextOrientation="Right" />
2026-01-02 17:30:41 +08:00
<ms:FlexibleRowPanel>
<ms:Divider
2025-08-24 13:49:55 +08:00
Content="Text"
2026-02-12 21:29:00 +08:00
Height="20"
2025-08-20 12:10:13 +08:00
Orientation="Vertical" />
2025-10-10 11:19:58 +08:00
<Separator Height="20" Style="{StaticResource VerticalSeparatorStyle}" />
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
2025-08-12 23:08:54 +08:00
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="图标、文本、标签">
2025-08-12 23:08:54 +08:00
<StackPanel>
2026-01-02 17:30:41 +08:00
<ms:FlexibleRowPanel>
<ms:IconElement Symbol="FontDownload" />
2025-08-24 13:49:55 +08:00
<TextBlock
FontFamily="{StaticResource MaterialIconFont}"
HorizontalAlignment="Center"
2026-02-12 21:29:00 +08:00
Margin="5"
Text="{ms:SymbolIcon Symbol=AddBox}"
VerticalAlignment="Center" />
<ms:IconElement
2025-08-12 23:08:54 +08:00
FontSize="14"
FontWeight="Regular"
2025-08-24 13:49:55 +08:00
Foreground="{DynamicResource PrimaryNormalBrush}"
2026-02-12 21:29:00 +08:00
HorizontalAlignment="Center"
Margin="5"
Symbol="Save"
VerticalAlignment="Center" />
2026-01-02 17:30:41 +08:00
<ms:Chip Content="必应" Url="www.bing.com">
<ms:Chip.Header>
<ms:IconElement Symbol="Search" />
</ms:Chip.Header>
</ms:Chip>
2025-08-12 23:08:54 +08:00
2026-01-02 17:30:41 +08:00
<ms:Chip
2025-08-12 23:08:54 +08:00
Content="C盘"
HeadBackground="{DynamicResource PrimaryGradientBrush}"
Url="C:\">
2026-01-02 17:30:41 +08:00
<ms:Chip.Header>
<ms:IconElement Symbol="HardDisk" />
</ms:Chip.Header>
</ms:Chip>
<ms:Chip
2025-08-12 23:08:54 +08:00
Content="C盘"
HeadBackground="{DynamicResource PrimaryGradientBrush}"
Header="标题"
Url="C:\" />
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
<ms:FlexibleRowPanel>
<ms:Tag Content="默认标签" />
<ms:Tag
2025-08-12 23:08:54 +08:00
Closable="True"
Content="颜色标签"
2025-08-24 13:49:55 +08:00
Foreground="{DynamicResource PrimaryNormalBrush}" />
2026-01-02 17:30:41 +08:00
<ms:Tag Closable="True" Content="多彩的" />
<ms:Tag
2025-08-12 23:08:54 +08:00
Background="{DynamicResource PrimaryNormalBrush}"
Closable="True"
Content="白色前景色"
2025-08-24 13:49:55 +08:00
Foreground="White" />
2026-01-02 17:30:41 +08:00
<ms:CheckableTag Content="可切换标签" IsChecked="True" />
</ms:FlexibleRowPanel>
<ms:FlexibleRowPanel>
<ms:Avatar>
<ms:IconElement Foreground="{DynamicResource PrimaryGradientBrush}" Symbol="AccountCircle" />
</ms:Avatar>
<ms:Avatar Foreground="{DynamicResource PrimaryNormalBrush}">
2025-08-12 23:08:54 +08:00
<TextBlock Margin="5" Text="Head" />
2026-01-02 17:30:41 +08:00
</ms:Avatar>
<ms:Badge Status="Success" />
<ms:Badge Count="10">
2025-08-12 23:08:54 +08:00
<Button Content="徽章" />
2026-01-02 17:30:41 +08:00
</ms:Badge>
2025-08-12 23:08:54 +08:00
2026-01-02 17:30:41 +08:00
<ms:Badge Count="100" OverflowCount="99">
2025-08-12 23:08:54 +08:00
<Button Content="徽章" />
2026-01-02 17:30:41 +08:00
</ms:Badge>
2025-08-12 23:08:54 +08:00
2026-01-02 17:30:41 +08:00
<ms:Badge Status="Warning">
2025-08-12 23:08:54 +08:00
<Button Content="徽章" />
2026-01-02 17:30:41 +08:00
</ms:Badge>
</ms:FlexibleRowPanel>
2025-08-12 23:08:54 +08:00
</StackPanel>
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="普通按钮 Button">
2025-08-12 23:08:54 +08:00
<StackPanel>
2026-01-02 17:30:41 +08:00
<ms:UniformGrid
2025-12-23 21:35:54 +08:00
ColumnSpacing="0"
Columns="6"
RowSpacing="0"
2025-12-28 11:47:54 +08:00
Rows="2">
2026-02-12 21:29:00 +08:00
<Button Content="基本" ms:ControlAssist.Icon="{ms:Icon SymbolValue=SmartButton}" />
<Button
Content="禁用按钮"
2026-02-12 21:29:00 +08:00
IsEnabled="False"
ms:ControlAssist.Icon="{ms:Icon SymbolValue=SmartButton}" />
2025-08-20 12:10:13 +08:00
<Button
Content="主要"
ToolTip="Primary"
2026-02-12 21:29:00 +08:00
ToolTipService.Placement="Top"
ms:ControlAssist.AppearanceType="Primary" />
2025-08-12 23:08:54 +08:00
<Button
Content="禁用主要"
2026-02-12 21:29:00 +08:00
IsEnabled="False"
ms:ControlAssist.AppearanceType="Primary" />
2025-08-20 12:10:35 +08:00
<Button
Content="信息"
ToolTip="Info"
2026-02-12 21:29:00 +08:00
ToolTipService.Placement="Top"
ms:ControlAssist.AppearanceType="Info" />
2025-08-20 12:10:35 +08:00
<Button
Content="禁用信息"
2026-02-12 21:29:00 +08:00
IsEnabled="False"
ms:ControlAssist.AppearanceType="Info" />
2025-08-20 12:10:13 +08:00
<Button
Content="成功"
ToolTip="Succeed"
2025-08-20 12:10:35 +08:00
ToolTipService.InitialShowDelay="100"
2026-02-12 21:29:00 +08:00
ToolTipService.Placement="Bottom"
ms:ControlAssist.AppearanceType="Success" />
2025-08-12 23:08:54 +08:00
<Button
Content="禁用成功"
2026-02-12 21:29:00 +08:00
IsEnabled="False"
ms:ControlAssist.AppearanceType="Success" />
2025-08-12 23:08:54 +08:00
2026-02-12 21:29:00 +08:00
<Button Content="警告" ms:ControlAssist.AppearanceType="Warning" />
2025-08-12 23:08:54 +08:00
<Button
Content="禁用警告"
2026-02-12 21:29:00 +08:00
IsEnabled="False"
ms:ControlAssist.AppearanceType="Warning" />
2025-08-12 23:08:54 +08:00
2026-02-12 21:29:00 +08:00
<Button Content="危险" ms:ControlAssist.AppearanceType="Error" />
2025-08-12 23:08:54 +08:00
<Button
Content="禁用危险"
2026-02-12 21:29:00 +08:00
IsEnabled="False"
ms:ControlAssist.AppearanceType="Error" />
2026-01-02 17:30:41 +08:00
</ms:UniformGrid>
<ms:UniformGrid
2025-12-23 21:35:54 +08:00
ColumnSpacing="5"
Columns="7"
Rows="1">
2025-08-12 23:08:54 +08:00
<Button IsEnabled="False">
<StackPanel Orientation="Horizontal">
2026-01-02 17:30:41 +08:00
<ms:IconElement Margin="5,0" Symbol="Box" />
2025-08-12 23:08:54 +08:00
<TextBlock Text="图标" />
</StackPanel>
</Button>
2026-01-02 17:30:41 +08:00
<ms:Hyperlink Content="超链接" NavigateUri="www.bing.com" />
2026-02-12 21:29:00 +08:00
<Button Content="运行中..." ms:ControlAssist.IsRunning="True" />
<Button Content="图标" ms:ControlAssist.Icon="{ms:Icon SymbolValue=MagicButton}" />
2025-12-23 21:35:54 +08:00
<RepeatButton Content="重复按钮" IsEnabled="False" />
2026-02-12 21:29:00 +08:00
<Button Style="{StaticResource IconButtonStyle}" ms:ControlAssist.Icon="{ms:Icon SymbolValue=Add}" />
2025-08-12 23:08:54 +08:00
<Button
IsEnabled="False"
2026-02-12 21:29:00 +08:00
Style="{StaticResource IconButtonStyle}"
ms:ControlAssist.Icon="{ms:Icon SymbolValue=Add}" />
2026-01-02 17:30:41 +08:00
</ms:UniformGrid>
2025-08-12 23:08:54 +08:00
</StackPanel>
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="输入框 Input">
<ms:UniformGrid Columns="4" Rows="4">
2025-08-20 12:10:13 +08:00
<TextBox
2026-02-12 21:29:00 +08:00
Text="Regions"
2025-08-20 12:10:13 +08:00
VerticalAlignment="Top"
2026-02-12 21:29:00 +08:00
ms:InputAssist.Clearable="True" />
2025-08-20 12:10:13 +08:00
<TextBox
2025-08-12 23:08:54 +08:00
IsEnabled="False"
2026-02-12 21:29:00 +08:00
Text="禁用"
VerticalAlignment="Center" />
2025-08-20 12:10:13 +08:00
<TextBox
IsReadOnly="True"
2026-02-12 21:29:00 +08:00
Text="只读"
VerticalAlignment="Center" />
2025-08-20 12:10:13 +08:00
<TextBox
2026-02-12 21:29:00 +08:00
Text="123"
2026-01-02 17:30:41 +08:00
ms:InputAssist.Clearable="True"
ms:InputAssist.PlaceholderText="水印"
ms:InputAssist.Prefix="Text"
2026-02-12 21:29:00 +08:00
ms:InputAssist.Suffix="mm" />
2025-12-23 21:35:54 +08:00
2026-01-02 17:30:41 +08:00
<TextBox ms:InputAssist.PlaceholderText="水印" ms:InputAssist.Prefix="Prefix">
<ms:InputAssist.Suffix>
2025-08-20 12:10:13 +08:00
<Button
2025-08-24 13:49:55 +08:00
Content="Search"
2026-02-12 21:29:00 +08:00
Style="{StaticResource FlattenButtonStyle}"
VerticalContentAlignment="Stretch"
ms:ControlAssist.CornerRadius="0 4 4 0" />
2026-01-02 17:30:41 +08:00
</ms:InputAssist.Suffix>
2025-08-20 12:10:13 +08:00
</TextBox>
2026-01-02 17:30:41 +08:00
<TextBox ms:InputAssist.PlaceholderText="请输入用户名">
<ms:InputAssist.Prefix>
<ms:IconElement Foreground="#3F000000" Symbol="VerifiedUser" />
</ms:InputAssist.Prefix>
<ms:InputAssist.Suffix>
<ms:IconElement Foreground="#3F000000" Symbol="Close" />
</ms:InputAssist.Suffix>
2025-08-20 12:10:13 +08:00
</TextBox>
<TextBox
2025-08-12 23:08:54 +08:00
IsEnabled="False"
2026-02-12 21:29:00 +08:00
Text="禁用"
VerticalAlignment="Center" />
2025-08-20 12:10:13 +08:00
<TextBox
IsReadOnly="True"
2026-02-12 21:29:00 +08:00
Text="只读"
VerticalAlignment="Center" />
2025-12-23 21:35:54 +08:00
2026-02-12 21:29:00 +08:00
<PasswordBox ms:InputAssist.Password="666" />
<PasswordBox IsEnabled="False" ms:InputAssist.Password="666" />
2025-08-20 12:10:13 +08:00
<PasswordBox
2026-01-02 17:30:41 +08:00
ms:InputAssist.Clearable="True"
ms:InputAssist.IsPasswordVisible="True"
ms:InputAssist.Password="{Binding Password}"
ms:InputAssist.PlaceholderText="请输入密码" />
2025-08-20 12:10:13 +08:00
<PasswordBox
2026-02-12 21:29:00 +08:00
IsEnabled="False"
2026-01-02 17:30:41 +08:00
ms:InputAssist.Clearable="True"
ms:InputAssist.IsPasswordVisible="True"
2026-02-12 21:29:00 +08:00
ms:InputAssist.Password="12345" />
2025-12-23 21:35:54 +08:00
2026-01-02 17:30:41 +08:00
<ms:NumberBox
2025-08-20 12:10:13 +08:00
MaxValue="100"
MinValue="-100"
Precision="3"
Step="0.05"
Value="10" />
2026-01-02 17:30:41 +08:00
<ms:NumberBox
2025-08-20 12:10:13 +08:00
IsEnabled="False"
MaxValue="100"
MinValue="0"
Precision="3"
Step="0.05"
Value="10" />
2026-01-02 17:30:41 +08:00
<ms:NumericBox CurValue="100" Style="{StaticResource DefaultTextBoxStyle}" />
<ms:NumericBox
2025-12-23 21:35:54 +08:00
CurValue="100"
IsEnabled="False"
2025-12-23 21:35:54 +08:00
Style="{StaticResource DefaultTextBoxStyle}" />
2026-01-02 17:30:41 +08:00
</ms:UniformGrid>
2025-12-23 21:35:54 +08:00
<RichTextBox>
<FlowDocument>
<Paragraph>
<Bold>流文档</Bold>
<Run Foreground="{StaticResource PrimaryGradientBrush}">富文本框.</Run>
</Paragraph>
</FlowDocument>
</RichTextBox>
2025-08-12 23:08:54 +08:00
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="下拉框 ComboBox">
<ms:FlexibleRowPanel>
2025-08-20 12:10:35 +08:00
<ComboBox IsEditable="True">
2025-12-23 21:35:54 +08:00
<ComboBoxItem Content="可编辑" />
2025-08-12 23:08:54 +08:00
<ComboBoxItem Content="选项 B" />
<ComboBoxItem Content="选项 C" />
</ComboBox>
<ComboBox
IsEditable="True"
IsEnabled="False"
SelectedIndex="0">
2025-12-23 21:35:54 +08:00
<ComboBoxItem Content="可编辑" />
2025-08-12 23:08:54 +08:00
<ComboBoxItem Content="选项 B" />
<ComboBoxItem Content="选项 C" />
</ComboBox>
2025-12-23 21:35:54 +08:00
<ComboBox SelectedIndex="0">
2025-08-12 23:08:54 +08:00
<ComboBoxItem Content="选项 A" />
<ComboBoxItem Content="选项 B" />
<ComboBoxItem Content="选项 C" />
</ComboBox>
<ComboBox IsEnabled="False" SelectedIndex="0">
<ComboBoxItem Content="选项 A" />
<ComboBoxItem Content="选项 B" />
<ComboBoxItem Content="选项 C" />
</ComboBox>
2026-02-12 21:29:00 +08:00
<ms:SearchableComboBox ms:InputAssist.PlaceholderText="搜索..">
<ComboBoxItem Content="选项 A" />
<ComboBoxItem Content="选项 B" />
<ComboBoxItem Content="选项 C" />
</ms:SearchableComboBox>
<ms:SearchableComboBox
ItemsSource="{Binding Areas}"
SelectedItem="{Binding SearchArea}"
ms:InputAssist.PlaceholderText="搜索地区.." />
2025-12-23 21:35:54 +08:00
<!--<ComboBox Style="{StaticResource FloatComboBoxStyle}">
<ComboBoxItem Content="选项 A" />
<ComboBoxItem Content="选项 B" />
<ComboBoxItem Content="选项 C" />
</ComboBox>
<ComboBox IsEditable="True" Style="{StaticResource FloatComboBoxStyle}">
<ComboBoxItem Content="选项 A" />
<ComboBoxItem Content="选项 B" />
<ComboBoxItem Content="选项 C" />
</ComboBox>-->
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
<ms:FlexibleRowPanel ms:ControlAssist.AnchorHeaderText="级联选择 Cascader">
<ms:Cascader
2025-12-23 21:35:54 +08:00
DisplayMemberPath="Name"
ItemsSource="{Binding StaffList, Mode=TwoWay}"
SelectedValue="{Binding SelectedItem, Mode=TwoWay}"
2026-02-12 21:29:00 +08:00
SubmenuMemberPath="Children"
VerticalAlignment="Top" />
2026-01-02 17:30:41 +08:00
<ms:Cascader
2025-08-20 12:10:13 +08:00
DisplayMemberPath="Name"
2025-12-23 21:35:54 +08:00
IsEnabled="False"
2025-08-20 12:10:13 +08:00
ItemsSource="{Binding StaffList, Mode=TwoWay}"
2025-08-24 13:49:55 +08:00
SelectedValue="{Binding SelectedItem, Mode=TwoWay}"
2026-02-12 21:29:00 +08:00
SubmenuMemberPath="Children"
VerticalAlignment="Top" />
2026-01-02 17:30:41 +08:00
<ms:Cascader
2025-08-20 12:10:13 +08:00
DisplayMemberPath="Name"
IsSearchable="False"
ItemsSource="{Binding StaffList, Mode=TwoWay}"
2025-08-24 13:49:55 +08:00
SelectedValue="{Binding SelectedItem, Mode=TwoWay}"
SubmenuMemberPath="Children" />
2026-02-12 21:29:00 +08:00
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
2025-08-20 12:10:35 +08:00
<TextBlock
2025-08-24 13:49:55 +08:00
FontWeight="Bold"
2026-02-12 21:29:00 +08:00
Margin="3,0"
2025-08-20 12:10:35 +08:00
Text="详情:" />
2025-08-20 12:10:13 +08:00
<StackPanel Orientation="Horizontal">
2025-08-20 12:10:35 +08:00
<TextBlock Margin="3,0" Text="姓名: " />
2025-08-24 13:49:55 +08:00
<TextBlock Margin="3,0" Text="{Binding SelectedItem.Name, FallbackValue='N/A'}" />
2025-08-20 12:10:13 +08:00
</StackPanel>
2025-08-20 12:10:35 +08:00
<StackPanel Margin="3,0" Orientation="Horizontal">
<TextBlock Margin="3,0" Text="年龄: " />
2025-08-24 13:49:55 +08:00
<TextBlock Margin="3,0" Text="{Binding SelectedItem.Age, FallbackValue='N/A'}" />
2025-08-20 12:10:13 +08:00
</StackPanel>
</StackPanel>
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
<ms:FlexibleRowPanel>
<ms:AutoComplete
2025-08-20 12:10:13 +08:00
ItemsSource="{Binding Areas}"
2025-12-23 21:35:54 +08:00
SelectedItem="{Binding AutoArea}"
2026-02-12 21:29:00 +08:00
Text="{Binding Input, Mode=TwoWay}"
ms:InputAssist.PlaceholderText="请输入地区.." />
2026-01-02 17:30:41 +08:00
<ms:AutoComplete
2025-08-20 12:10:13 +08:00
ItemsSource="{Binding Areas}"
2025-12-23 21:35:54 +08:00
SelectedItem="{Binding AutoArea}"
2026-02-12 21:29:00 +08:00
Text="{Binding Input, Mode=TwoWay}"
ms:InputAssist.Clearable="False" />
2026-01-02 17:30:41 +08:00
<ms:AutoComplete
2025-08-20 12:10:13 +08:00
IsEnabled="False"
ItemsSource="{Binding Areas}"
2025-12-23 21:35:54 +08:00
SelectedItem="{Binding AutoArea}"
Text="{Binding AutoArea.Name, Mode=TwoWay}" />
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
<ms:FlexibleRowPanel Spacing="5">
<ms:MultiComboBox
2025-08-12 23:08:54 +08:00
DisplayMemberPath="Name"
ItemsSource="{Binding Areas}"
2025-12-23 21:35:54 +08:00
PlaceHolderText="请选择区域..."
2025-08-20 12:10:13 +08:00
SelectedItem="{Binding Area}"
2026-02-12 21:29:00 +08:00
SelectionMode="Single"
x:Name="Regions" />
2026-01-02 17:30:41 +08:00
<ms:MultiComboBox
2025-08-12 23:08:54 +08:00
DisplayMemberPath="Name"
2025-08-20 12:10:13 +08:00
IsFilteringEnabled="False"
2025-08-12 23:08:54 +08:00
ItemsSource="{Binding Areas}"
2025-12-23 21:35:54 +08:00
PlaceHolderText="请选择区域..."
2025-08-20 12:10:13 +08:00
SelectedItem="{Binding Area}"
SelectionMode="Single" />
2026-01-02 17:30:41 +08:00
<ms:MultiComboBox
2025-08-12 23:08:54 +08:00
DisplayMemberPath="Name"
ItemsSource="{Binding Areas}"
2025-12-23 21:35:54 +08:00
PlaceHolderText="请选择区域..."
2025-08-20 12:10:13 +08:00
SelectedItems="{Binding SelectedListAreas}"
SelectionMode="Multiple" />
2026-01-02 17:30:41 +08:00
<ms:MultiComboBox
2025-08-20 12:10:13 +08:00
IsFilteringEnabled="False"
2025-08-12 23:08:54 +08:00
ItemsSource="{Binding Areas}"
2025-12-23 21:35:54 +08:00
PlaceHolderText="请选择区域..."
2025-08-20 12:10:13 +08:00
SelectedItems="{Binding SelectedObservableAreas}"
SelectionMode="Multiple" />
<Button Command="{Binding AddAreaCommand}" Content="测试" />
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
2025-08-12 23:08:54 +08:00
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="切换按钮 ToggleButton">
<ms:FlexibleRowPanel>
2025-12-23 21:35:54 +08:00
<ToggleButton Content="切换按钮" />
2025-08-12 23:08:54 +08:00
<ToggleButton Content="切换按钮" IsChecked="True" />
<ToggleButton
Content="禁用切换按钮"
IsChecked="False"
IsEnabled="False" />
<ToggleButton
Content="禁用切换按钮"
IsChecked="True"
IsEnabled="False" />
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
<ms:FlexibleRowPanel>
<ms:ToggleSwitch IsChecked="False" />
<ms:ToggleSwitch IsChecked="False" IsEnabled="False" />
<ms:ToggleSwitch IsChecked="True" />
2025-12-23 21:35:54 +08:00
2026-01-02 17:30:41 +08:00
<ms:ToggleSwitch IsChecked="True" IsEnabled="False" />
2025-12-23 21:35:54 +08:00
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
2025-08-12 23:08:54 +08:00
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="文本标签 Label">
2025-08-12 23:08:54 +08:00
<UniformGrid Rows="1">
<Label Content="默认标签" />
<Label Content="主要标签" Style="{StaticResource LabelPrimary}" />
<Label Content="禁用默认标签" IsEnabled="False" />
<Label
Content="禁用主要标签"
IsEnabled="False"
Style="{StaticResource LabelPrimary}" />
</UniformGrid>
</StackPanel>
2025-12-23 21:35:54 +08:00
<Expander Header="折叠" />
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="复选框 CheckBox">
2025-08-20 12:10:13 +08:00
<UniformGrid Rows="1">
<CheckBox Content="复选框" />
<CheckBox Content="复选框" IsEnabled="False" />
<CheckBox Content="复选框" IsChecked="{x:Null}" />
<CheckBox
Content="复选框"
IsChecked="{x:Null}"
IsEnabled="False" />
<CheckBox Content="复选框" IsChecked="True" />
<CheckBox
Content="复选框"
IsChecked="True"
IsEnabled="False" />
</UniformGrid>
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="单选框 RadioButton">
<ms:FlexibleRowPanel>
2025-08-20 12:10:13 +08:00
<RadioButton
Content="单选按钮 A"
GroupName="RadioG1"
IsChecked="True" />
2025-12-23 21:35:54 +08:00
<RadioButton
Content="单选按钮 B"
GroupName="RadioG1"
IsChecked="{x:Null}" />
<RadioButton Content="单选按钮 C" GroupName="RadioG1" />
2025-08-20 12:10:13 +08:00
<RadioButton
Content="禁用单选按钮 A"
GroupName="RadioG2"
IsChecked="True"
IsEnabled="False" />
<RadioButton
Content="禁用单选按钮 B"
GroupName="RadioG2"
IsChecked="{x:Null}"
IsEnabled="False" />
<RadioButton
Content="禁用单选按钮 C"
GroupName="RadioG2"
IsEnabled="False" />
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
2025-07-31 20:12:24 +08:00
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="滑动/滚动条 Slider">
2025-08-12 23:08:54 +08:00
<Grid>
2025-07-31 20:12:24 +08:00
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
2025-08-12 23:08:54 +08:00
<StackPanel>
2026-02-12 21:29:00 +08:00
<CheckBox Content="加载中" x:Name="IsSpining" />
2025-08-12 23:08:54 +08:00
<StackPanel Height="100" Orientation="Horizontal">
<Slider
2025-07-31 20:12:24 +08:00
Maximum="100"
Minimum="0"
2025-08-12 23:08:54 +08:00
Orientation="Vertical"
2026-02-12 21:29:00 +08:00
Value="25"
x:Name="ProgressVerticalSlider" />
2025-08-12 23:08:54 +08:00
<Slider
IsEnabled="False"
Maximum="100"
Minimum="0"
Orientation="Vertical"
2026-02-12 21:29:00 +08:00
Value="25"
x:Name="ProgressVerticalSlider1" />
2025-08-12 23:08:54 +08:00
<ProgressBar
Height="100"
IsIndeterminate="{Binding ElementName=ProgressCheckbox, Path=IsChecked}"
Maximum="100"
Minimum="0"
Orientation="Vertical"
Value="{Binding ElementName=ProgressVerticalSlider, Path=Value}" />
<ProgressBar
Height="100"
IsEnabled="False"
IsIndeterminate="{Binding ElementName=ProgressCheckbox, Path=IsChecked}"
2025-07-31 20:12:24 +08:00
Maximum="100"
2025-08-12 23:08:54 +08:00
Minimum="0"
Orientation="Vertical"
Value="{Binding ElementName=ProgressVerticalSlider, Path=Value}" />
2025-08-20 12:10:13 +08:00
<ProgressBar
Height="100"
IsEnabled="False"
IsIndeterminate="True"
Maximum="100"
Minimum="0"
Orientation="Vertical"
Value="100" />
2025-08-12 23:08:54 +08:00
</StackPanel>
2025-07-31 20:12:24 +08:00
</StackPanel>
2025-08-12 23:08:54 +08:00
<Grid Grid.Column="1" Panel.ZIndex="10">
2026-01-02 17:30:41 +08:00
<ms:Spin Spinning="{Binding ElementName=IsSpining, Path=IsChecked}" Tip="加载中...">
2025-08-12 23:08:54 +08:00
<StackPanel x:Name="SpinPanel">
2026-02-12 21:29:00 +08:00
<CheckBox Content="进度待定" x:Name="ProgressCheckbox" />
2025-08-12 23:08:54 +08:00
<Slider
Maximum="100"
Minimum="0"
2026-02-12 21:29:00 +08:00
Value="25"
x:Name="ProgressSlider" />
<Slider
Maximum="100"
Minimum="0"
TickFrequency="10"
2026-02-12 21:29:00 +08:00
TickPlacement="TopLeft"
x:Name="ProgressTickSlider" />
2025-08-12 23:08:54 +08:00
<Slider
IsEnabled="False"
Maximum="100"
Minimum="0"
2026-02-12 21:29:00 +08:00
Value="25"
x:Name="ProgressSlider1" />
2025-08-12 23:08:54 +08:00
<ProgressBar
IsIndeterminate="{Binding ElementName=ProgressCheckbox, Path=IsChecked}"
Maximum="100"
Minimum="0"
Value="{Binding ElementName=ProgressSlider, Path=Value}" />
<ProgressBar
IsEnabled="False"
IsIndeterminate="{Binding ElementName=ProgressCheckbox, Path=IsChecked}"
Maximum="100"
Minimum="0"
Value="{Binding ElementName=ProgressSlider, Path=Value}" />
</StackPanel>
2026-01-02 17:30:41 +08:00
</ms:Spin>
<ms:Spin
2025-08-12 23:08:54 +08:00
HorizontalAlignment="Left"
Spinning="{Binding ElementName=IsSpining, Path=IsChecked}"
Tip="加载中...">
2026-01-02 17:30:41 +08:00
<ms:Spin.Indicator>
<ms:IconElement Symbol="Downloading" />
</ms:Spin.Indicator>
</ms:Spin>
2025-08-12 23:08:54 +08:00
</Grid>
2025-07-31 20:12:24 +08:00
</Grid>
2025-08-12 23:08:54 +08:00
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="文件、文件夹 Browser">
<ms:FlexibleRowPanel>
<ms:ChooseBox />
<ms:ChooseBox IsEnabled="False" />
</ms:FlexibleRowPanel>
2025-12-23 21:35:54 +08:00
<UniformGrid Rows="1">
2026-01-02 17:30:41 +08:00
<ms:UploadArea
2025-12-23 21:35:54 +08:00
Accept="Image Files|*.jpg;*.jpeg;*.png;*.gif"
HintText="点击选择单个图片"
2026-02-12 21:29:00 +08:00
Margin="5"
2025-12-23 21:35:54 +08:00
Mode="FilesOnly" />
2026-01-02 17:30:41 +08:00
<ms:UploadArea
2025-12-23 21:35:54 +08:00
HintText="点击选择一个项目文件夹"
2026-02-12 21:29:00 +08:00
Margin="5"
2025-12-23 21:35:54 +08:00
Mode="FoldersOnly" />
2026-01-02 17:30:41 +08:00
<ms:UploadArea
2025-12-23 21:35:54 +08:00
Accept="Document Files|*.doc;*.docx;*.pdf|All Files|*.*"
HintText="点击或拖拽多个文档到此"
2026-02-12 21:29:00 +08:00
Margin="5"
2025-12-23 21:35:54 +08:00
Mode="FilesOnly"
Multiple="True" />
2026-01-02 17:30:41 +08:00
<ms:UploadArea
2025-12-23 21:35:54 +08:00
HintText="点击或拖拽多个文件夹到此"
2026-02-12 21:29:00 +08:00
Margin="5"
2025-12-23 21:35:54 +08:00
Mode="FoldersOnly"
Multiple="True" />
</UniformGrid>
</StackPanel>
2026-02-12 21:29:00 +08:00
<ms:FlexibleRowPanel LayoutMode="Auto" ms:ControlAssist.AnchorHeaderText="时间日期 DataPicker">
2026-01-01 10:02:59 +08:00
<DatePicker VerticalAlignment="Center" />
2025-12-23 21:35:54 +08:00
<Calendar Margin="5">
2025-08-20 12:10:13 +08:00
<Calendar.BlackoutDates>
<CalendarDateRange End="2022/7/12" Start="2022/7/10" />
</Calendar.BlackoutDates>
</Calendar>
2026-02-12 21:29:00 +08:00
<Calendar IsEnabled="False" Margin="5">
2025-08-20 12:10:13 +08:00
<Calendar.BlackoutDates>
<CalendarDateRange End="2025/7/12" Start="2025/7/10" />
2025-08-20 12:10:13 +08:00
</Calendar.BlackoutDates>
</Calendar>
<StackPanel VerticalAlignment="Center">
2026-01-02 17:30:41 +08:00
<ms:TimePicker ClockIdentifier="Clock12Hour" Header="TimerPicker" />
<ms:TimePicker />
</StackPanel>
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
<ms:FlexibleRowPanel ms:ControlAssist.AnchorHeaderText="颜色拾取 ColorPicker">
2025-08-20 12:10:13 +08:00
<!--<neu:ColorPickerControl />-->
2026-01-02 17:30:41 +08:00
<ms:ColorPanel />
<ms:ColorPicker Margin="10" SelectedColor="Black" />
</ms:FlexibleRowPanel>
<ms:FlexibleRowPanel ms:ControlAssist.AnchorHeaderText="树形结构 TreeView">
2025-08-20 12:10:13 +08:00
<TreeView Margin="4">
<TreeViewItem Header="A123" IsExpanded="True">
<TreeViewItem Header="B123" IsExpanded="True">
2025-08-20 12:10:13 +08:00
<TreeViewItem Header="C123" />
2025-07-31 20:12:24 +08:00
</TreeViewItem>
2025-08-20 12:10:13 +08:00
<TreeViewItem Header="B456" IsEnabled="False" />
</TreeViewItem>
</TreeView>
2026-01-02 17:30:41 +08:00
<ms:MultiTreeView>
<ms:MultiTreeViewItem Header="Item1">
<ms:MultiTreeViewItem Header="Item1">
<ms:MultiTreeViewItem Header="Item1" />
2025-08-20 12:10:13 +08:00
2026-01-02 17:30:41 +08:00
<ms:MultiTreeViewItem Header="Item1" />
</ms:MultiTreeViewItem>
<ms:MultiTreeViewItem Header="Item1" />
</ms:MultiTreeViewItem>
<ms:MultiTreeViewItem Header="Item1" />
<ms:MultiTreeViewItem Header="Item1" />
</ms:MultiTreeView>
<ms:MultiTreeView ItemsSource="{Binding Nodes}" SelectedItems="{Binding SelectedNodes}">
<ms:MultiTreeView.ItemTemplate>
2025-08-20 12:10:13 +08:00
<HierarchicalDataTemplate ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
2026-01-02 17:30:41 +08:00
</ms:MultiTreeView.ItemTemplate>
</ms:MultiTreeView>
</ms:FlexibleRowPanel>
2025-08-12 23:08:54 +08:00
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="列表框 ListBox">
<ms:FlexibleRowPanel>
<ListBox Margin="4">
2025-07-31 20:12:24 +08:00
<ListBoxItem>SyminOmega</ListBoxItem>
<ListBoxItem>Celeron533</ListBoxItem>
<ListBoxItem>Hello World</ListBoxItem>
<ListBoxItem>Furry Fantasy</ListBoxItem>
<ListBoxItem>Item Demo</ListBoxItem>
<ListBoxItem>Item Demo</ListBoxItem>
</ListBox>
2025-12-23 21:35:54 +08:00
<ListBox
Margin="4"
2026-02-12 21:29:00 +08:00
SelectionMode="Multiple"
ms:ControlAssist.IsFlowLayout="True">
2025-12-23 21:35:54 +08:00
<ListBoxItem IsSelected="True">SyminOmega</ListBoxItem>
<ListBoxItem IsSelected="True">Celeron533</ListBoxItem>
<ListBoxItem>Hello World</ListBoxItem>
<ListBoxItem>Furry Fantasy</ListBoxItem>
<ListBoxItem>Item Demo</ListBoxItem>
<ListBoxItem>Item Demo</ListBoxItem>
</ListBox>
<ListBox
Margin="4"
SelectionMode="Multiple"
Style="{StaticResource ChipListBoxStyle}">
2025-09-12 09:55:36 +08:00
<ListBoxItem IsSelected="True">SyminOmega</ListBoxItem>
2025-12-23 21:35:54 +08:00
<ListBoxItem IsSelected="True">Celeron533</ListBoxItem>
2025-09-12 09:55:36 +08:00
<ListBoxItem>Hello World</ListBoxItem>
<ListBoxItem>Furry Fantasy</ListBoxItem>
<ListBoxItem>Item Demo</ListBoxItem>
<ListBoxItem>Item Demo</ListBoxItem>
</ListBox>
2025-08-12 23:08:54 +08:00
<ListView
DataContext="{StaticResource Dgd}"
2026-02-12 21:29:00 +08:00
ItemsSource="{Binding DataCollection}"
Margin="4">
2025-07-31 20:12:24 +08:00
<ListView.View>
<GridView>
<GridViewColumn DisplayMemberBinding="{Binding Id}" Header="ID" />
<GridViewColumn DisplayMemberBinding="{Binding Name}" Header="Name" />
<GridViewColumn DisplayMemberBinding="{Binding Age}" Header="Age" />
<GridViewColumn DisplayMemberBinding="{Binding Mark}" Header="Mark" />
<GridViewColumn DisplayMemberBinding="{Binding Gender}" Header="Gender" />
</GridView>
</ListView.View>
</ListView>
2025-08-20 12:10:13 +08:00
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
<ms:FlexibleRowPanel LayoutMode="Auto" Spacing="20">
2025-12-28 11:47:54 +08:00
<UniformGrid Columns="3">
2025-08-20 12:10:13 +08:00
<ListBox
HorizontalAlignment="Center"
SelectedIndex="1"
2026-02-12 21:29:00 +08:00
Style="{StaticResource TabGroupListBoxStyle}"
VerticalAlignment="Center">
2025-08-20 12:10:13 +08:00
<ListBoxItem Content="Home" />
<ListBoxItem Content="Away" />
<ListBoxItem Content="Night" />
</ListBox>
2025-12-28 11:47:54 +08:00
2025-08-20 12:10:13 +08:00
</UniformGrid>
2025-12-28 11:47:54 +08:00
2026-01-02 17:30:41 +08:00
</ms:FlexibleRowPanel>
2025-08-12 23:08:54 +08:00
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="数据展示 TabControl">
2025-08-12 23:08:54 +08:00
<WrapPanel>
2025-08-20 12:10:13 +08:00
<TabControl>
<TabItem Header="选项卡 1">
<Grid Margin="4">
<!-- <Separator /> -->
<DataGrid
DataContext="{StaticResource Dgd}"
2026-02-12 21:29:00 +08:00
ItemsSource="{Binding DataCollection}"
Margin="4" />
2025-08-20 12:10:13 +08:00
</Grid>
</TabItem>
<TabItem Header="选项卡 2" />
<TabItem Header="禁用选项卡" IsEnabled="False" />
</TabControl>
2025-08-12 23:08:54 +08:00
2025-10-10 11:19:58 +08:00
<TabControl Style="{StaticResource FlattenTabControlStyle}" TabStripPlacement="Top">
2025-08-12 23:08:54 +08:00
<TabItem Header="选项卡 1">
2025-08-24 13:49:55 +08:00
<StackPanel Margin="4">
2026-01-02 17:30:41 +08:00
<ms:NeuDataGrid
BindableSelectedItems="{Binding SelectedDataGridItems, Mode=TwoWay}"
2025-12-23 21:35:54 +08:00
CanUserAddRows="False"
2025-08-12 23:08:54 +08:00
DataContext="{StaticResource Dgd}"
2026-02-12 21:29:00 +08:00
ItemsSource="{Binding DataCollection}"
Margin="4"
x:Name="NeuDG1" />
2025-08-24 13:49:55 +08:00
<Button
Command="{Binding ShowSelectedItemsCommand}"
Content="显示选中项"
2026-02-12 21:29:00 +08:00
DataContext="{StaticResource Dgd}"
VerticalAlignment="Center" />
2025-08-24 13:49:55 +08:00
</StackPanel>
2025-08-20 12:10:13 +08:00
</TabItem>
<TabItem Header="选项卡 2" />
<TabItem Header="禁用选项卡" IsEnabled="False" />
</TabControl>
2025-12-23 21:35:54 +08:00
2026-01-02 17:30:41 +08:00
<ms:NeuDataGrid
2025-08-24 13:49:55 +08:00
BindableSelectedItems="{Binding SelectedDataItems, Mode=TwoWay}"
2026-02-12 21:29:00 +08:00
HorizontalAlignment="Left"
2025-08-24 13:49:55 +08:00
ItemsSource="{Binding DataItems}"
2026-02-12 21:29:00 +08:00
Margin="5"
ToolTip="双击展开详情"
d:ItemsSource="{d:SampleData ItemCount=5}"
x:Name="NeuDG2">
2025-12-23 21:35:54 +08:00
<!-- RowDetailsVisibilityMode="VisibleWhenSelected" -->
<!-- 展开详情 -->
2025-08-24 13:49:55 +08:00
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDoubleClick">
<i:InvokeCommandAction Command="{Binding ToggleDetailsCommand}" CommandParameter="{Binding SelectedItem, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" />
2025-08-24 13:49:55 +08:00
</i:EventTrigger>
</i:Interaction.Triggers>
2026-01-02 17:30:41 +08:00
<ms:NeuDataGrid.RowStyle>
2025-10-10 11:19:58 +08:00
<Style BasedOn="{StaticResource DefaultDataGridRowStyle}" TargetType="{x:Type DataGridRow}">
2026-01-02 17:30:41 +08:00
<Setter Property="DetailsVisibility" Value="{Binding IsDetailsVisible, Converter={x:Static ms:BooleanToVisibilityConverter.CollapsedInstance}, Mode=TwoWay}" />
2025-08-24 13:49:55 +08:00
</Style>
2026-01-02 17:30:41 +08:00
</ms:NeuDataGrid.RowStyle>
<ms:NeuDataGrid.RowDetailsTemplate>
2025-08-24 13:49:55 +08:00
<DataTemplate>
<StackPanel Margin="10">
<TextBlock FontWeight="Bold" Text="详细信息:" />
<StackPanel Margin="10,5,0,0" Orientation="Horizontal">
<TextBlock Text="姓名: " />
<TextBlock Text="{Binding Name}" />
</StackPanel>
<StackPanel Margin="10,5,0,0" Orientation="Horizontal">
<TextBlock Text="年龄: " />
<TextBlock Text="{Binding Age}" />
</StackPanel>
</StackPanel>
</DataTemplate>
2026-01-02 17:30:41 +08:00
</ms:NeuDataGrid.RowDetailsTemplate>
<ms:NeuDataGrid.Columns>
2025-08-24 13:49:55 +08:00
<DataGridTextColumn Binding="{Binding Name}" Header="Name" />
<DataGridTextColumn Binding="{Binding Age}" Header="Age" />
2026-01-02 17:30:41 +08:00
</ms:NeuDataGrid.Columns>
</ms:NeuDataGrid>
2025-09-04 22:39:00 +08:00
<StackPanel>
2026-01-02 17:30:41 +08:00
<ms:TreeGrid
2026-02-12 21:29:00 +08:00
ItemsSource="{Binding HierarchicalData}"
2025-09-04 22:39:00 +08:00
Margin="5"
2026-02-12 21:29:00 +08:00
d:ItemsSource="{d:SampleData ItemCount=5}">
2026-01-02 17:30:41 +08:00
<ms:TreeGrid.ItemTemplate>
2026-02-12 21:29:00 +08:00
<HierarchicalDataTemplate DataType="{x:Type test:TreeNodeItem}" ItemsSource="{Binding Children}">
2025-09-04 22:39:00 +08:00
<!-- 使用 GridViewRowPresenter 来确保内容与表头列对齐 -->
<!-- Columns 属性必须绑定到 TreeGrid 的 Columns 集合 -->
2026-01-02 17:30:41 +08:00
<GridViewRowPresenter Columns="{Binding Columns, RelativeSource={RelativeSource AncestorType={x:Type ms:TreeGrid}}}" Content="{Binding}" />
2025-09-04 22:39:00 +08:00
</HierarchicalDataTemplate>
2026-01-02 17:30:41 +08:00
</ms:TreeGrid.ItemTemplate>
2025-09-04 22:39:00 +08:00
<!-- 直接定义 GridViewColumn 集合,就像使用 ListView 一样 -->
2026-01-02 17:30:41 +08:00
<ms:TreeGrid.Columns>
2025-09-04 22:39:00 +08:00
<!-- 第一列使用 CellTemplate 来手动添加展开按钮和内容 -->
<GridViewColumn Header="任务名">
<GridViewColumn.CellTemplate>
2026-02-12 21:29:00 +08:00
<DataTemplate DataType="{x:Type test:TreeNodeItem}">
2025-09-04 22:39:00 +08:00
<StackPanel Orientation="Horizontal">
<!-- TreeViewItem 的默认模板会提供缩进和展开按钮,我们只需要显示内容即可 -->
2026-02-12 21:29:00 +08:00
<TextBlock Text="{Binding Name}" VerticalAlignment="Center" />
2025-09-04 22:39:00 +08:00
</StackPanel>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
2025-08-24 13:49:55 +08:00
2025-09-04 22:39:00 +08:00
<GridViewColumn DisplayMemberBinding="{Binding Owner}" Header="安排" />
2025-08-24 13:49:55 +08:00
2025-09-04 22:39:00 +08:00
<GridViewColumn DisplayMemberBinding="{Binding Status}" Header="状态" />
2026-01-02 17:30:41 +08:00
</ms:TreeGrid.Columns>
2025-08-24 13:49:55 +08:00
2026-01-02 17:30:41 +08:00
</ms:TreeGrid>
2025-09-04 22:39:00 +08:00
<Button
Command="{Binding ShowSelectedItemsCommand}"
2026-02-12 21:29:00 +08:00
Content="查看选中项"
Margin="10"
VerticalAlignment="Center" />
2025-09-04 22:39:00 +08:00
</StackPanel>
2026-02-12 21:29:00 +08:00
<ms:Accordion BorderThickness="1" Width="200">
2026-01-02 17:30:41 +08:00
<ms:AccordionItem Header="User Profile" IsExpanded="True">
2025-09-04 22:39:00 +08:00
<StackPanel Margin="10">
<TextBlock Text="Name: John Doe" />
<TextBlock Text="Email: john.doe@example.com" />
</StackPanel>
2026-01-02 17:30:41 +08:00
</ms:AccordionItem>
<ms:AccordionItem Header="User Profile">
2025-09-04 22:39:00 +08:00
<StackPanel Margin="10">
<TextBlock Text="Name: John Doe" />
<TextBlock Text="Email: john.doe@example.com" />
</StackPanel>
2026-01-02 17:30:41 +08:00
</ms:AccordionItem>
<ms:AccordionItem Header="User Profile">
2025-09-04 22:39:00 +08:00
<StackPanel Margin="10">
<TextBlock Text="Name: John Doe" />
<TextBlock Text="Email: john.doe@example.com" />
</StackPanel>
2026-01-02 17:30:41 +08:00
</ms:AccordionItem>
<ms:AccordionItem Header="Application Settings">
<StackPanel>
2025-09-04 22:39:00 +08:00
<CheckBox Content="Enable Dark Mode" />
<CheckBox Content="Auto-save every 5 minutes" />
</StackPanel>
2026-01-02 17:30:41 +08:00
</ms:AccordionItem>
<ms:AccordionItem Header="Help &amp; Support">
2025-09-04 22:39:00 +08:00
<TextBlock
Margin="10"
Text="For support, please visit our website."
TextWrapping="Wrap" />
2026-01-02 17:30:41 +08:00
</ms:AccordionItem>
</ms:Accordion>
<ms:Accordion
2026-02-12 21:29:00 +08:00
ItemsSource="{Binding Items}"
2025-12-23 21:35:54 +08:00
Margin="10,0,0,0"
2026-02-12 21:29:00 +08:00
d:ItemsSource="{d:SampleData ItemCount=5}">
2026-01-02 17:30:41 +08:00
<ms:Accordion.ItemContainerStyle>
<Style BasedOn="{StaticResource AccordionItemStyle}" TargetType="{x:Type ms:AccordionItem}">
2025-09-04 22:39:00 +08:00
<Setter Property="Header" Value="{Binding Label}" />
<Setter Property="Content">
<Setter.Value>
<TextBlock
Margin="10"
Text="{Binding Value}"
TextWrapping="Wrap" />
</Setter.Value>
</Setter>
</Style>
2026-01-02 17:30:41 +08:00
</ms:Accordion.ItemContainerStyle>
</ms:Accordion>
2025-08-12 23:08:54 +08:00
<!-- 显示分页后的数据 -->
2026-01-02 17:30:41 +08:00
<ms:Pagination
2025-08-12 23:08:54 +08:00
CurrentPage="{Binding CurrentPage, Mode=TwoWay}"
2025-12-23 21:35:54 +08:00
DataContext="{StaticResource MainViewModel}"
2026-02-12 21:29:00 +08:00
HorizontalAlignment="Center"
Margin="0,15,0,0"
2025-08-12 23:08:54 +08:00
PageSize="{Binding PageSize, Mode=TwoWay}"
ShowPageInput="True"
2025-08-20 12:10:13 +08:00
TotalItems="{Binding TotalItems}" />
2025-08-12 23:08:54 +08:00
</WrapPanel>
</StackPanel>
2026-01-02 17:30:41 +08:00
<StackPanel ms:ControlAssist.AnchorHeaderText="其他 Others">
<ms:Breadcrumb Navigate="Breadcrumb_Navigate">
<ms:BreadcrumbItem
2025-08-20 12:10:13 +08:00
Content="Item1"
Href="Item1"
ToolTip="Item 3 Href属性为空将禁用" />
2026-01-02 17:30:41 +08:00
<ms:BreadcrumbItem
2025-08-20 12:10:13 +08:00
Content="Item2"
Href="Item2"
ToolTip="Item 3 Href属性为空将禁用" />
2026-01-02 17:30:41 +08:00
<ms:BreadcrumbItem Content="Item3" />
</ms:Breadcrumb>
2025-08-12 23:08:54 +08:00
</StackPanel>
2026-01-02 17:30:41 +08:00
</ms:StackPanel>
</ms:Anchor>
2025-07-31 20:12:24 +08:00
2025-08-12 23:08:54 +08:00
<!-- 状态栏部分 -->
2025-07-31 20:12:24 +08:00
<StatusBar Grid.Row="2">
<TextBlock Text="★" />
<TextBlock Text="状态栏" />
<Separator />
2026-02-12 21:29:00 +08:00
<TextBlock Text="消息" x:Name="TextMessage" />
2025-07-31 20:12:24 +08:00
</StatusBar>
</Grid>
2026-01-02 17:30:41 +08:00
</ms:MelWindow>