Re[5]: [wpf] Прозрачность окна
От: MxKazan Португалия  
Дата: 17.03.09 13:25
Оценка: 3 (1)
Здравствуйте, lumf, Вы писали:

L>про zindex я уже давно подумал.... то ли туплю, то ли черт знает..... не получается чета нифига.... у гридов не нашел пропертей top и left... поэтому не могу расположить один грид на другим.... верен ли этот подход в принципе?

А зачем тебе у Гридов Top и Left? Если нужны, то юзай Canvas. Grid — это панель, которая не только даёт делать столбцы/строки, но и позволяет складывать контролы в стопку по z-order. Поэтому я тебе про нее написал. Посмотри пример:
<Window x:Class="WpfApplication21.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Background="Transparent"
        AllowsTransparency="True"
        WindowStyle="None"
        Title="Window1"
        Height="300"
        Width="300">
    <Grid>
        <Rectangle Fill="Black" Opacity="0.7"/>
        <Grid ShowGridLines="True">
            <Grid.ColumnDefinitions>
                <ColumnDefinition/>
                <ColumnDefinition/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition/>
                <RowDefinition/>
            </Grid.RowDefinitions>
            <Image Name="PersonFoto"></Image>
            <Button Grid.Column="0" Grid.Row="0" Opacity="1">Привет</Button>
            <Button Grid.Column="1" Grid.Row="1" Opacity="0.5">Привет</Button>
        </Grid>
    </Grid>        
</Window>

Пойдет?

L>я просто в других примерах вроде видел что форму они делают прозрачной, просто дочерним элементам делают вот так:

L><Border.Background>
L> <SolidColorBrush Color="{DynamicResource MainPanelBackColor}"/>
L></Border.Background>
L>но мне такой вариант кажется не очень.... мне что теперь каждому элементу стиль задавать.
А этот код точно также приведет к прозрачности бордюров, потому что они находятся в том же визуальном дереве.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.