Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <ScrollViewer x:Name="scrollViewer" Margin="0,10" Grid.Row="0" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto" >
- <ItemsControl Name="items" ItemsSource="{Binding PreferenceGroups}">
- <ItemsControl.Resources>
- <ItemsPanelTemplate x:Key="wrapPanel">
- <WrapPanel></WrapPanel>
- </ItemsPanelTemplate>
- <DataTemplate x:Key="SoloSelection">
- <ItemsControl ItemsSource="{Binding .}" ItemsPanel="{StaticResource wrapPanel}">
- <ItemsControl.DataContext>
- <MultiBinding Converter="{StaticResource prefConv}">
- <Binding Path="."></Binding>
- <Binding ElementName="viewModel" Path="DataContext.OrderItem.Preferences"></Binding>
- </MultiBinding>
- </ItemsControl.DataContext>
- <ItemsControl.ItemTemplate>
- <DataTemplate>
- <local:RadioButtonToggle
- Width="146" Height="58" Margin="0,0,4,4" GroupName="{Binding Path=Preference.GroupId}" Style="{StaticResource OrderRadioButton}" >
- <i:Interaction.Triggers>
- <i:EventTrigger EventName="Unchecked">
- <cal:ActionMessage MethodName="RemovePreference">
- <cal:Parameter Value="$dataContext" />
- <cal:Parameter Value="false" />
- </cal:ActionMessage>
- </i:EventTrigger>
- <i:EventTrigger EventName="Checked">
- <cal:ActionMessage MethodName="AddPreference">
- <cal:Parameter Value="$dataContext" />
- <cal:Parameter Value="false" />
- </cal:ActionMessage>
- </i:EventTrigger>
- </i:Interaction.Triggers>
- <TextBlock Margin="4,0,3,0" VerticalAlignment="Center" TextWrapping="Wrap" Text="{Binding Preference.Name}"></TextBlock>
- <local:RadioButtonToggle.IsChecked>
- <MultiBinding Mode="OneTime" Converter="{StaticResource prefCheckedConv}">
- <Binding Path="."></Binding>
- <Binding ElementName="viewModel" Path="DataContext.OrderItem.Preferences"></Binding>
- </MultiBinding>
- </local:RadioButtonToggle.IsChecked>
- </local:RadioButtonToggle>
- </DataTemplate>
- </ItemsControl.ItemTemplate>
- </ItemsControl>
- </DataTemplate>
- <DataTemplate x:Key="MultiSelection">
- <ItemsControl ItemsSource="{Binding .}" ItemsPanel="{StaticResource wrapPanel}">
- <ItemsControl.DataContext>
- <MultiBinding Converter="{StaticResource prefConv}">
- <Binding Path="."></Binding>
- <Binding ElementName="viewModel" Path="DataContext.OrderItem.Preferences"></Binding>
- </MultiBinding>
- </ItemsControl.DataContext>
- <ItemsControl.ItemTemplate>
- <DataTemplate>
- <CheckBox
- cal:Message.Attach="[Event Checked]=[Action AddPreference($dataContext,false)]; [Event Unchecked]=[Action RemovePreference($datacontext,false)]"
- Width="146" Height="58" Margin="0,0,4,4" Style="{StaticResource OrderCheckboxButton}">
- <TextBlock Margin="4,0,3,0" VerticalAlignment="Center" TextWrapping="Wrap" Text="{Binding Preference.Name}"></TextBlock>
- <CheckBox.IsChecked>
- <MultiBinding Mode="OneTime" Converter="{StaticResource prefCheckedConv}">
- <Binding Path="."></Binding>
- <Binding ElementName="viewModel" Path="DataContext.OrderItem.Preferences"></Binding>
- </MultiBinding>
- </CheckBox.IsChecked>
- </CheckBox>
- </DataTemplate>
- </ItemsControl.ItemTemplate>
- </ItemsControl>
- </DataTemplate>
- <DataTemplate x:Key="MultiQuantitySelection">
- <ItemsControl ItemsSource="{Binding .}" ItemsPanel="{StaticResource wrapPanel}">
- <ItemsControl.DataContext>
- <MultiBinding Converter="{StaticResource prefConv}">
- <Binding Path="."></Binding>
- <Binding ElementName="viewModel" Path="DataContext.OrderItem.Preferences"></Binding>
- </MultiBinding>
- </ItemsControl.DataContext>
- <ItemsControl.ItemTemplate>
- <DataTemplate>
- <Grid Width="146" Height="58" Margin="0,0,4,4" >
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="Auto"></ColumnDefinition>
- <ColumnDefinition Width="*"></ColumnDefinition>
- </Grid.ColumnDefinitions>
- <Button Name="quantity"
- Background="#1f1f1f"
- cal:Message.Attach="[Event Click]=[Action RemovePreference($dataContext,'True')]"
- Width="45" Style="{StaticResource OrderProductButton}" >
- <TextBlock Text="{Binding Quantity}"></TextBlock>
- </Button>
- <Button
- cal:Message.Attach="[Event Click]=[Action AddPreference($dataContext,'True')]"
- Margin="-1,0,0,0" Grid.Column="1" HorizontalAlignment="Stretch" HorizontalContentAlignment="Left" Style="{StaticResource OrderProductButton}">
- <TextBlock TextWrapping="Wrap" HorizontalAlignment="Left" TextTrimming="CharacterEllipsis" Text="{Binding Path=Preference.Name}" ></TextBlock>
- </Button>
- </Grid>
- <DataTemplate.Triggers>
- <DataTrigger Binding="{common:ComparisonBinding DataContext.Quantity,GT,0}" Value="{x:Null}">
- <DataTrigger.Setters>
- <Setter Value="{StaticResource BackgroundSelected}" Property="Background" TargetName="quantity"/>
- </DataTrigger.Setters>
- </DataTrigger>
- </DataTemplate.Triggers>
- </DataTemplate>
- </ItemsControl.ItemTemplate>
- </ItemsControl>
- </DataTemplate>
- </ItemsControl.Resources>
- <ItemsControl.ItemTemplate>
- <DataTemplate>
- <StackPanel>
- <TextBlock FontSize="25" FontWeight="Light" Margin="0,8,0,5" Text="{Binding Name}"></TextBlock>
- <!-- Εδω τα items -->
- <ContentControl Content="{Binding Preferences}" Name="items"></ContentControl>
- </StackPanel>
- <DataTemplate.Triggers>
- <DataTrigger Binding="{Binding Path=SelectionMode}" Value="1">
- <Setter TargetName="items" Property="ContentTemplate" Value="{StaticResource SoloSelection}"/>
- </DataTrigger>
- <DataTrigger Binding="{Binding Path=SelectionMode}" Value="2">
- <Setter TargetName="items" Property="ContentTemplate" Value="{StaticResource MultiSelection}"/>
- </DataTrigger>
- <DataTrigger Binding="{Binding Path=SelectionMode}" Value="3">
- <Setter TargetName="items" Property="ContentTemplate" Value="{StaticResource MultiQuantitySelection}"/>
- </DataTrigger>
- </DataTemplate.Triggers>
- </DataTemplate>
- </ItemsControl.ItemTemplate>
- <ItemsControl.ItemsPanel>
- <ItemsPanelTemplate>
- <StackPanel Orientation="Vertical"></StackPanel >
- </ItemsPanelTemplate>
- </ItemsControl.ItemsPanel>
- </ItemsControl>
- </ScrollViewer>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement