Можно ли убрать эту кнопку в ToolBar если они не требуется в данной ситуации?
WPF хорош тем, что все элементы в нем имеют свой стиль, который очень легко можно изменить!
<ToolBar/>.OverflowGrid, это обычный Grid (<Grid x:Name="OverflowGrid" HorizontalAlignment="Right">). Вы можете отредактировать его, можете скрыть, а можете удалить его и все, что с ним связано. Я лично скрою, допишу просто Visibility="Collapsed".MainPanelBorder. Находим его и видим, что он ссылается на стиль ToolBarMainPanelBorderStyle, находим его и там видим <Setter Property="Margin" Value="0,0,11,0"/>, ставим значение в 0 или вовсе удаляем строку. Вот и все, теперь мы можем применить этот стиль к любому ToolBar и он будет без кнопки:
Вот таким простым способом вы можете изменять стиль любого контрола в WPF. Удачи в программирование!
Еще один способ (как по мне, не очень хороший, ибо работаем со стилями через код) [источник].
Loaded.В обработчике выполняем тоже, что мы делали через XAML:
private void ToolBar_Loaded(object sender, RoutedEventArgs e)
{
ToolBar toolBar = sender as ToolBar;
var overflowGrid = toolBar.Template.FindName("OverflowGrid", toolBar) as FrameworkElement;
if (overflowGrid != null)
{
overflowGrid.Visibility = Visibility.Collapsed;
}
var mainPanelBorder = toolBar.Template.FindName("MainPanelBorder", toolBar) as FrameworkElement;
if (mainPanelBorder != null)
{
mainPanelBorder.Margin = new Thickness();
}
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей