Расширяете возможности комбинированного управления Silverlight с ног на голову? - PullRequest
0 голосов
/ 25 июля 2011

Есть ли способ изменить расширяющуюся ориентацию на верхний элемент комбинированного списка в silverlight, а не на нижний?выбрать 240p, 340p и т. д.) .. Если я поставлю комбобокс в нижней части макета, его открывающийся верх по умолчанию, но есть ли способ добиться этого в любом другом месте?

1 Ответ

1 голос
/ 25 июля 2011

Вам нужно будет использовать прикрепленное поведение, поскольку всплывающий элемент управления Silverlight ComboBox не имеет свойства Placement.Пример такого поведения можно найти здесь: Всплывающее окно Silverlight с целевым размещением

Затем все, что вам нужно сделать, это применить стиль, в котором вы прикрепите поведение к всплывающему окну:

<Style x:Key="ComboBoxStyle1" TargetType="ComboBox">
    ... snip ...
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="ComboBox">
                <Grid>
                    ... snip ...

                    <!-- Attach behaviour here! -->
                    <Popup x:Name="Popup">
                        <Border x:Name="PopupBorder" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="3" HorizontalAlignment="Stretch" Height="Auto">
                            <Border.Background>
                                <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                    <GradientStop Color="#FFFFFFFF" Offset="0"/>
                                    <GradientStop Color="#FFFEFEFE" Offset="1"/>
                                </LinearGradientBrush>
                            </Border.Background>
                            <ScrollViewer x:Name="ScrollViewer" BorderThickness="0" Padding="1">
                                <ItemsPresenter/>
                            </ScrollViewer>
                        </Border>
                    </Popup>
                </Grid>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...