Loading...
Loading...
Compare original and translation side by side
SplitButtonAdvSplitButtonAdvSplitButtonAdv
├── Primary Button (default action)
│ ├── Label (text)
│ ├── Icon (SmallIcon/LargeIcon/IconTemplate)
│ └── Command (ICommand binding)
└── Dropdown Arrow (opens menu)
└── DropDownMenuGroup (container)
├── DropDownMenuItem (standard items)
│ ├── Header (text)
│ ├── Icon (image)
│ ├── IsCheckable (checkbox support)
│ └── Command (ICommand binding)
└── MoreItems (custom UIElement items)SplitButtonAdv
├── Primary Button (default action)
│ ├── Label (text)
│ ├── Icon (SmallIcon/LargeIcon/IconTemplate)
│ └── Command (ICommand binding)
└── Dropdown Arrow (opens menu)
└── DropDownMenuGroup (container)
├── DropDownMenuItem (standard items)
│ ├── Header (text)
│ ├── Icon (image)
│ ├── IsCheckable (checkbox support)
│ └── Command (ICommand binding)
└── MoreItems (custom UIElement items)<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:syncfusion="http://schemas.syncfusion.com/wpf">
<Grid>
<syncfusion:SplitButtonAdv Label="Colors"
SizeMode="Normal"
Click="SplitButton_Click">
<syncfusion:DropDownMenuGroup>
<syncfusion:DropDownMenuItem Header="Red"
Click="MenuItem_Click"/>
<syncfusion:DropDownMenuItem Header="Green"
Click="MenuItem_Click"/>
<syncfusion:DropDownMenuItem Header="Blue"
Click="MenuItem_Click"/>
</syncfusion:DropDownMenuGroup>
</syncfusion:SplitButtonAdv>
</Grid>
</Window>using Syncfusion.Windows.Tools.Controls;
private void SplitButton_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("Primary action executed");
}
private void MenuItem_Click(object sender, RoutedEventArgs e)
{
var menuItem = sender as DropDownMenuItem;
MessageBox.Show($"Selected: {menuItem.Header}");
}<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:syncfusion="http://schemas.syncfusion.com/wpf">
<Grid>
<syncfusion:SplitButtonAdv Label="Colors"
SizeMode="Normal"
Click="SplitButton_Click">
<syncfusion:DropDownMenuGroup>
<syncfusion:DropDownMenuItem Header="Red"
Click="MenuItem_Click"/>
<syncfusion:DropDownMenuItem Header="Green"
Click="MenuItem_Click"/>
<syncfusion:DropDownMenuItem Header="Blue"
Click="MenuItem_Click"/>
</syncfusion:DropDownMenuGroup>
</syncfusion:SplitButtonAdv>
</Grid>
</Window>using Syncfusion.Windows.Tools.Controls;
private void SplitButton_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("Primary action executed");
}
private void MenuItem_Click(object sender, RoutedEventArgs e)
{
var menuItem = sender as DropDownMenuItem;
MessageBox.Show($"Selected: {menuItem.Header}");
}<syncfusion:SplitButtonAdv Label="Country" SizeMode="Normal">
<syncfusion:DropDownMenuGroup ItemsSource="{Binding Countries}">
<syncfusion:DropDownMenuGroup.ItemTemplate>
<DataTemplate>
<syncfusion:DropDownMenuItem
Header="{Binding Name}"
Command="{Binding DataContext.SelectCountryCommand,
RelativeSource={RelativeSource AncestorType=syncfusion:SplitButtonAdv}}"
CommandParameter="{Binding}">
<syncfusion:DropDownMenuItem.Icon>
<Image Source="{Binding FlagIcon}"/>
</syncfusion:DropDownMenuItem.Icon>
</syncfusion:DropDownMenuItem>
</DataTemplate>
</syncfusion:DropDownMenuGroup.ItemTemplate>
</syncfusion:DropDownMenuGroup>
</syncfusion:SplitButtonAdv><syncfusion:SplitButtonAdv Label="Country" SizeMode="Normal">
<syncfusion:DropDownMenuGroup ItemsSource="{Binding Countries}">
<syncfusion:DropDownMenuGroup.ItemTemplate>
<DataTemplate>
<syncfusion:DropDownMenuItem
Header="{Binding Name}"
Command="{Binding DataContext.SelectCountryCommand,
RelativeSource={RelativeSource AncestorType=syncfusion:SplitButtonAdv}}"
CommandParameter="{Binding}">
<syncfusion:DropDownMenuItem.Icon>
<Image Source="{Binding FlagIcon}"/>
</syncfusion:DropDownMenuItem.Icon>
</syncfusion:DropDownMenuItem>
</DataTemplate>
</syncfusion:DropDownMenuGroup.ItemTemplate>
</syncfusion:DropDownMenuGroup>
</syncfusion:SplitButtonAdv>public class ViewModel : NotificationObject
{
private bool _canPerformAction = true;
public DelegateCommand<object> ClickCommand { get; set; }
public bool CanPerformAction
{
get => _canPerformAction;
set
{
_canPerformAction = value;
ClickCommand.RaiseCanExecuteChanged();
RaisePropertyChanged(nameof(CanPerformAction));
}
}
public ViewModel()
{
ClickCommand = new DelegateCommand<object>(
ExecuteAction,
CanExecuteAction);
}
private bool CanExecuteAction(object parameter) => CanPerformAction;
private void ExecuteAction(object parameter)
{
MessageBox.Show($"Action executed: {parameter}");
}
}<syncfusion:SplitButtonAdv Label="Action"
Command="{Binding ClickCommand}"
CommandParameter="Primary Action">
<!-- Dropdown items -->
</syncfusion:SplitButtonAdv>public class ViewModel : NotificationObject
{
private bool _canPerformAction = true;
public DelegateCommand<object> ClickCommand { get; set; }
public bool CanPerformAction
{
get => _canPerformAction;
set
{
_canPerformAction = value;
ClickCommand.RaiseCanExecuteChanged();
RaisePropertyChanged(nameof(CanPerformAction));
}
}
public ViewModel()
{
ClickCommand = new DelegateCommand<object>(
ExecuteAction,
CanExecuteAction);
}
private bool CanExecuteAction(object parameter) => CanPerformAction;
private void ExecuteAction(object parameter)
{
MessageBox.Show($"Action executed: {parameter}");
}
}<syncfusion:SplitButtonAdv Label="Action"
Command="{Binding ClickCommand}"
CommandParameter="Primary Action">
<!-- Dropdown items -->
</syncfusion:SplitButtonAdv><Window.Resources>
<DataTemplate x:Key="customIconTemplate">
<Grid Width="32" Height="32">
<Path Data="M10,0 L20,10 L10,20 L0,10 Z"
Fill="#FF3A3A38"
Stretch="Fill"/>
</Grid>
</DataTemplate>
</Window.Resources>
<syncfusion:SplitButtonAdv Label="Custom Icon"
SizeMode="Large"
IconTemplate="{StaticResource customIconTemplate}">
<!-- Dropdown items -->
</syncfusion:SplitButtonAdv><Window.Resources>
<DataTemplate x:Key="customIconTemplate">
<Grid Width="32" Height="32">
<Path Data="M10,0 L20,10 L10,20 L0,10 Z"
Fill="#FF3A3A38"
Stretch="Fill"/>
</Grid>
</DataTemplate>
</Window.Resources>
<syncfusion:SplitButtonAdv Label="Custom Icon"
SizeMode="Large"
IconTemplate="{StaticResource customIconTemplate}">
<!-- Dropdown items -->
</syncfusion:SplitButtonAdv><syncfusion:SplitButtonAdv Label="Options" SizeMode="Normal">
<syncfusion:DropDownMenuGroup MaxHeight="200"
ScrollBarVisibility="Visible"
IconBarEnabled="True">
<syncfusion:DropDownMenuItem Header="Option 1"
IsCheckable="True"
IsChecked="True"/>
<syncfusion:DropDownMenuItem Header="Option 2"
IsCheckable="True"/>
<syncfusion:DropDownMenuItem Header="Option 3"
IsCheckable="True"/>
<!-- More items... -->
</syncfusion:DropDownMenuGroup>
</syncfusion:SplitButtonAdv><syncfusion:SplitButtonAdv Label="Options" SizeMode="Normal">
<syncfusion:DropDownMenuGroup MaxHeight="200"
ScrollBarVisibility="Visible"
IconBarEnabled="True">
<syncfusion:DropDownMenuItem Header="Option 1"
IsCheckable="True"
IsChecked="True"/>
<syncfusion:DropDownMenuItem Header="Option 2"
IsCheckable="True"/>
<syncfusion:DropDownMenuItem Header="Option 3"
IsCheckable="True"/>
<!-- More items... -->
</syncfusion:DropDownMenuGroup>
</syncfusion:SplitButtonAdv>| Property | Type | Description |
|---|---|---|
| string | Text displayed on the button |
| SizeMode | Size mode: Small, Normal, or Large |
| ImageSource | Icon for Small/Normal modes |
| ImageSource | Icon for Large mode |
| DataTemplate | Custom icon template (overrides SmallIcon/LargeIcon) |
| DataTemplateSelector | Dynamic icon template selection |
| double | Width of the icon |
| double | Height of the icon |
| ICommand | Command for primary button click |
| object | Parameter passed to Command |
| DropDirection | Popup position: Left, Right, BottomLeft, etc. |
| bool | Enable multiline text in Large mode |
| bool | Activate button with Enter key |
| 属性 | 类型 | 说明 |
|---|---|---|
| string | 按钮上显示的文本 |
| SizeMode | 大小模式:Small、Normal或Large |
| ImageSource | Small/Normal模式下的图标 |
| ImageSource | Large模式下的图标 |
| DataTemplate | 自定义图标模板(优先级高于LargeIcon/SmallIcon) |
| DataTemplateSelector | 动态选择图标模板 |
| double | 图标的宽度 |
| double | 图标的高度 |
| ICommand | 主按钮点击的命令 |
| object | 传递给Command的参数 |
| DropDirection | 弹出位置:Left、Right、BottomLeft等 |
| bool | 在大尺寸模式下启用多行文本 |
| bool | 允许通过Enter键激活按钮 |
| Property | Type | Description |
|---|---|---|
| IEnumerable | Data source for menu items |
| DataTemplate | Template for menu item rendering |
| bool | Show/hide vertical icon bar |
| ScrollBarVisibility | Scrollbar visibility for long lists |
| bool | Enable gripper for resizing popup |
| double | Maximum height of dropdown popup |
| ObservableCollection<UIElement> | Custom items at bottom of menu |
| bool | Icon bar for custom items |
| 属性 | 类型 | 说明 |
|---|---|---|
| IEnumerable | 菜单项的数据源 |
| DataTemplate | 菜单项的渲染模板 |
| bool | 显示/隐藏垂直图标栏 |
| ScrollBarVisibility | 长列表的滚动条可见性 |
| bool | 启用抓手以调整弹出窗口大小 |
| double | 下拉弹出窗口的最大高度 |
| ObservableCollection<UIElement> | 菜单底部的自定义项 |
| bool | 自定义项的图标栏 |
| Property | Type | Description |
|---|---|---|
| object | Text or content of menu item |
| object | Icon displayed before header |
| bool | Enable checkbox for item |
| bool | Checked state of item |
| ICommand | Command for menu item click |
| object | Parameter passed to Command |
| 属性 | 类型 | 说明 |
|---|---|---|
| object | 菜单项的文本或内容 |
| object | 标题前显示的图标 |
| bool | 为项启用复选框 |
| bool | 项的选中状态 |
| ICommand | 菜单项点击的命令 |
| object | 传递给Command的参数 |