none
:: Layout RRS feed

  • Pergunta

  • Olá,

     

    Estou tentando fazer um layout, onde tenho uma coluna na esquerda que toma conta de todo o formulario e na outra coluna divido em duas linhas, sendo que entre a primeira e a segunda coluna eu tenho um gridsplitter e entre a primeira linha e a segunda linha da segunda coluna tambem tenho um gridsplitter.

    Abaixo tem um codigo mais eu nao consegui montar, o segundo gridsplitter nao funciona e nao fica na largura total.

     

    Code Snippet

    <DockPanel>

    <Menu DockPanel.Dock="Top">

    </Menu>

    <!-- camada 1 -->

    <Grid Name="gridToolbox" Visibility="Visible" ShowGridLines="True">

    <Grid.ColumnDefinitions>

    <ColumnDefinition Width="200" />

    <ColumnDefinition Width="*" />

    </Grid.ColumnDefinitions>

    <Grid.RowDefinitions>

    <RowDefinition Height="250" />

    <RowDefinition Height="*" />

    </Grid.RowDefinitions>

    <Button Grid.Row="0"

    Grid.RowSpan="3"

    Grid.Column="0"

    Content="Superior"></Button>

    <GridSplitter Width="5"

    Grid.Row="0"

    Grid.RowSpan="3"

    Grid.Column="0"

    VerticalContentAlignment="Stretch"

    ResizeDirection="Columns"></GridSplitter>

    <Grid Name="gridContent" Grid.Column="1" Grid.Row="0" Grid.RowSpan="2" Visibility="Visible" ShowGridLines="True">

    <Grid.ColumnDefinitions>

    <ColumnDefinition Width="auto" MinWidth="500" />

    </Grid.ColumnDefinitions>

    <Grid.RowDefinitions>

    <RowDefinition Height="300" />

    <RowDefinition Height="*" />

    </Grid.RowDefinitions>

    <GridSplitter ResizeDirection="Rows" Width="500" HorizontalAlignment="Left" Margin="0,145,0,150" />

    </Grid>

     

    </Grid>

    </DockPanel>

     

     

     

    Será q alguem pode dar uma força sou novato em wpf.

     

    []'s

    terça-feira, 16 de setembro de 2008 03:21

Respostas

  • Olá Diego,

     

    Veja se estes artigos ajudam:

     

    Walkthrough: Creating a Resizable Application by Using the WPF Designer
    http://msdn.microsoft.com/pt-br/library/bb546954.aspx

     

    How to: Create User-Resizable Applications with GridSplitter
    http://msdn.microsoft.com/pt-br/library/bb675313.aspx

     

    Abraços,

    Caio Proiete




    Caio Proiete
    http://www.caioproiete.com
    terça-feira, 16 de setembro de 2008 09:48
    Moderador
  •  

    Code Snippet

    <DockPanel>

    <Menu DockPanel.Dock="Top" Height="20"></Menu>

     

    <Grid>

    <Grid.RowDefinitions>

    <RowDefinition Height="100"/>

    <RowDefinition Height="3"/>

    <RowDefinition Height="*"/>

    </Grid.RowDefinitions>

     

    <Grid.ColumnDefinitions>

    <ColumnDefinition Width="100" />

    <ColumnDefinition Width="3" />

    <ColumnDefinition Width="*" />

    </Grid.ColumnDefinitions>

     

    <Grid Grid.Column="0" Grid.RowSpan="3" Background="Yellow"/>

    <GridSplitter Grid.Column="1" Grid.RowSpan="3" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>

     

    <Grid Grid.Row="0" Grid.Column="2" Background="Blue"/>

    <GridSplitter Grid.Row="1" Grid.Column="2" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>

     

    <Grid Grid.Row="2" Grid.Column="2" Background="Red"/>

    </Grid>

    </DockPanel>

     

     

    segunda-feira, 12 de janeiro de 2009 15:25
    Moderador

Todas as Respostas

  • Olá Diego,

     

    Veja se estes artigos ajudam:

     

    Walkthrough: Creating a Resizable Application by Using the WPF Designer
    http://msdn.microsoft.com/pt-br/library/bb546954.aspx

     

    How to: Create User-Resizable Applications with GridSplitter
    http://msdn.microsoft.com/pt-br/library/bb675313.aspx

     

    Abraços,

    Caio Proiete




    Caio Proiete
    http://www.caioproiete.com
    terça-feira, 16 de setembro de 2008 09:48
    Moderador
  • Bom dia, Cario.

    Antes de qualquer coisa obrigado pela força.

    Então depois que eu postei a minha duvida eu fiz uma alteração no codigo, adicionando mais uma linha na coluna da direita e coloquei o gridsplitter dentro dela e ai até funciona, mas tem um outro problema o gridsplitter náo fica com o tamanho total da coluna, ou seja, 100% de width já tentei colocar o auto mais nao rolou. O layout tem q ser, assim:



    Só pra lembrar as areas em cinza representam os gridsplitters.
    O que será que esta errado.

    []'s
    terça-feira, 16 de setembro de 2008 14:35
  •  

    Code Snippet

    <DockPanel>

    <Menu DockPanel.Dock="Top" Height="20"></Menu>

     

    <Grid>

    <Grid.RowDefinitions>

    <RowDefinition Height="100"/>

    <RowDefinition Height="3"/>

    <RowDefinition Height="*"/>

    </Grid.RowDefinitions>

     

    <Grid.ColumnDefinitions>

    <ColumnDefinition Width="100" />

    <ColumnDefinition Width="3" />

    <ColumnDefinition Width="*" />

    </Grid.ColumnDefinitions>

     

    <Grid Grid.Column="0" Grid.RowSpan="3" Background="Yellow"/>

    <GridSplitter Grid.Column="1" Grid.RowSpan="3" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>

     

    <Grid Grid.Row="0" Grid.Column="2" Background="Blue"/>

    <GridSplitter Grid.Row="1" Grid.Column="2" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>

     

    <Grid Grid.Row="2" Grid.Column="2" Background="Red"/>

    </Grid>

    </DockPanel>

     

     

    segunda-feira, 12 de janeiro de 2009 15:25
    Moderador