views:

571

answers:

1

I have an order entry form that has a listbox with a list of line items. I have my items template, and one of the values is a ComboBox in each of my Items.

Now, my form can also create Credit memo's in addition to purchase orders, but when I am creating a credit memo, I want to put the words "Credit Memo" over the list box, however, the textblock covers the combo box in two of my line items. I would like to pass my click event through the textblock to the combo boxes but I'm not sure how to do it.

This is what I have, ( Maybe I am coming at this totally wrong, I am kinda a noob with WPF )

<ListBox SelectionMode="Single" Grid.Row="2" 
                 ItemsSource="{Binding Path=LineItems}" HorizontalContentAlignment="Stretch" 
                 IsSynchronizedWithCurrentItem="True" Background="#66FFFFFF">
            <ListBox.ItemContainerStyle>
                <Style TargetType="{x:Type ListBoxItem}">
                    <Setter Property="Background" Value="WhiteSmoke"/>
                    <Setter Property="BorderThickness" Value="1" />
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding Path=IsPartBackOrder}" Value="True">
                            <Setter Property="Background" Value="Orange" />
                        </DataTrigger>                       
                    </Style.Triggers>
                </Style>
            </ListBox.ItemContainerStyle>
            <ListBox.ItemTemplate>
                <DataTemplate DataType="{x:Type Entities:SalesOrderLineItem}" >
                    <OrderEntry:SalesOrderLineItemCreate DataContext="{Binding}" DeleteSalesOrderLineItem="DeleteSalesOrderLineItem" Margin="0,3,3,0" >
                        <OrderEntry:SalesOrderLineItemCreate.Resources>
                            <Style TargetType="{x:Type OrderEntry:SalesOrderLineItemCreate}">
                                <Style.Triggers>
                                    <DataTrigger 
                                            Binding="{Binding RelativeSource=
                                              {
                                                 RelativeSource 
                                                 Mode=FindAncestor, 
                                                 AncestorType={x:Type ListBoxItem}
                                              }, 
                                              Path=IsSelected
                                             }" Value="True">
                                        <Setter Property="Background" Value="LightBlue" />
                                        <Setter Property="Foreground" Value="Black" />
                                    </DataTrigger>
                                </Style.Triggers>
                            </Style>
                        </OrderEntry:SalesOrderLineItemCreate.Resources>
                    </OrderEntry:SalesOrderLineItemCreate>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

        <TextBlock Grid.Row="2" 
                Text="Credit Memo" 
                   HorizontalAlignment="Center"
                   VerticalAlignment="Center"
                   FontSize="48" Height="Auto"
                   FontStyle="Italic"
                   Foreground="Red"
                   Opacity=".25">
             <TextBlock.Style>
                    <Style TargetType="{x:Type TextBlock}">
                        <Style.Triggers>
                            <DataTrigger Binding="{Binding Path=OrderType}" Value="CR">
                                <Setter Property="Visibility" Value="Visible" />
                            </DataTrigger>
                            <DataTrigger Binding="{Binding Path=OrderType}" Value="CU">
                                <Setter Property="Visibility" Value="Hidden" />
                            </DataTrigger>
                        </Style.Triggers>
                    </Style>
                </TextBlock.Style>
        </TextBlock>
+4  A: 
<TextBlock IsHitTestVisible="False" .../>`

HTH, Kent

Kent Boogaart
Sometimes it’s the simplest things. Thanks a ton.
Russ