<UserControl x:Class="CtrEditor.Controls.osVisFilter" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:CtrEditor.Controls" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="200"> <UserControl.Resources> <Style x:Key="FilterCheckBoxStyle" TargetType="CheckBox"> <Setter Property="Margin" Value="0,2,0,2" /> <Setter Property="FontSize" Value="12" /> </Style> <Style x:Key="FilterHeaderStyle" TargetType="TextBlock"> <Setter Property="FontWeight" Value="Bold" /> <Setter Property="Margin" Value="0,5,0,2" /> </Style> <Style x:Key="FilterSeparatorStyle" TargetType="Separator"> <Setter Property="Margin" Value="0,5,0,5" /> </Style> </UserControl.Resources> <Border BorderBrush="LightGray" BorderThickness="1" Padding="5"> <ScrollViewer VerticalScrollBarVisibility="Auto"> <StackPanel> <!-- Fixed Filter Options --> <TextBlock Text="Filter Options" Style="{StaticResource FilterHeaderStyle}" /> <CheckBox Content="All" IsChecked="{Binding ShowAll, Mode=TwoWay}" Style="{StaticResource FilterCheckBoxStyle}" /> <CheckBox Content="Cloned" IsChecked="{Binding ShowCloned, Mode=TwoWay}" Style="{StaticResource FilterCheckBoxStyle}" /> <CheckBox Content="Auto Created" IsChecked="{Binding ShowAutoCreated, Mode=TwoWay}" Style="{StaticResource FilterCheckBoxStyle}" /> <CheckBox Content="Enable On All Pages" IsChecked="{Binding ShowEnableOnAllPages, Mode=TwoWay}" Style="{StaticResource FilterCheckBoxStyle}" /> <CheckBox Content="Show On This Page" IsChecked="{Binding ShowOnThisPage, Mode=TwoWay}" Style="{StaticResource FilterCheckBoxStyle}" /> <!-- Separator between fixed and dynamic options --> <Separator Style="{StaticResource FilterSeparatorStyle}" /> <!-- Type Filter Options --> <TextBlock Text="Object Types" Style="{StaticResource FilterHeaderStyle}" /> <ItemsControl ItemsSource="{Binding TypeFilters}"> <ItemsControl.ItemTemplate> <DataTemplate> <CheckBox Content="{Binding DisplayName}" IsChecked="{Binding IsSelected, Mode=TwoWay}" Style="{StaticResource FilterCheckBoxStyle}" /> </DataTemplate> </ItemsControl.ItemTemplate> </ItemsControl> </StackPanel> </ScrollViewer> </Border> </UserControl>