none
Resoluciones de pantalla RRS feed

  • Pregunta

  • Buenos días/tardes/noches.

    Soy nuevo desarrollando para Windows Phone 8.1 y se me ha presentado un problema, el cual, he intentado resolver buscando información en internet (y en este foro), pero no encuentro lo que busco como tal, entonces me pareció buena idea hacer la pregunta directamente.

    El problema que se me presenta es en el momento de adaptar el contenido de la pantalla a las diferentes resoluciones de pantallas, es decir, los controles, imágenes, entre otros elementos que estén presentes en la pagina, al cambiar a una resolución mas grande, no aumentan de tamaño. He probado usando "RowDefinitions" y "ColumnDefinitions" pero realmente no logro que el tamaño de los controles se adapte automáticamente y sinceramente tampoco comprendo muy bien como funciona.

    Entonces, ¿me podrían ayudar?

    Edito: Trabajo usando Visual Basic .net 2013, aunque también comprendo C#.

    Gracias.


    • Editado DouglasR01 miércoles, 18 de noviembre de 2015 2:26
    miércoles, 18 de noviembre de 2015 2:20

Respuestas

  • Douglas, en tu caso:

    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
        
        <TextBlock HorizontalAlignment="Stretch" Margin="10" Grid.Column="0" TextWrapping="Wrap" Text="Nombre" VerticalAlignment="Top" FontSize="40"/>
    
            <TextBlock HorizontalAlignment="Stretch" Margin="10" Grid.Column="1" TextWrapping="Wrap" Text="Bienvenido" VerticalAlignment="Top" FontSize="30"/>
    
            <Button x:Name="IrCont" Content="Generar" HorizontalAlignment="Stretch" Margin="10" Grid.Column="0" Grid.Row="0" VerticalAlignment="Top" Width="228" Click="Button_Click"/>
    
            <Button x:Name="IrAdmin" Content="Administrar" HorizontalAlignment="Stretch" Margin="10" Grid.Column="1" Grid.Row="1"  VerticalAlignment="Top"/>
    </Grid>

    Con este código lograrás que los objetos se ajusten a la pantalla.

    Saludos.


    Christian Amado
    Software Engineer | MCPD: Windows Phone Developer | MCTS: Silverlight Developer
    Don't forget to mark the right answer and vote up if helps you.
    MCP Profile
    My code samples

    • Marcado como respuesta DouglasR01 miércoles, 18 de noviembre de 2015 20:17
    miércoles, 18 de noviembre de 2015 20:13

Todas las respuestas

  • Hola DouglasR01, ¿Cómo definiste tu XAML? Si quieres que los controles se adapten a pantalla debes utilizar valores relativos y no absolutos. Por ejemplo:

    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>
    </Gri>

    En este caso, defines la primera columna para que se ajuste al control que lleve dentro de esa celda. En la segunda columna defines que ocupe todo el espacio restante.

    Espero resulte útil.

    Saludos.


    Christian Amado
    Software Engineer | MCPD: Windows Phone Developer | MCTS: Silverlight Developer
    Don't forget to mark the right answer and vote up if helps you.
    MCP Profile
    My code samples

    miércoles, 18 de noviembre de 2015 11:17
  • Hola DouglasR01, ¿Cómo definiste tu XAML? Si quieres que los controles se adapten a pantalla debes utilizar valores relativos y no absolutos. Por ejemplo:

    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>
    </Gri>

    En este caso, defines la primera columna para que se ajuste al control que lleve dentro de esa celda. En la segunda columna defines que ocupe todo el espacio restante.

    Espero resulte útil.

    Saludos.


    Christian Amado
    Software Engineer | MCPD: Windows Phone Developer | MCTS: Silverlight Developer
    Don't forget to mark the right answer and vote up if helps you.
    MCP Profile
    My code samples

    Gracias por la información Christian, pero aún sigo sin entender como funciona realmente, es decir, cuando se aumente la resolución de la pantalla, ¿Con este código los controles se adaptarían automáticamente?
    <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto" />
                <ColumnDefinition Width="*" />
            </Grid.ColumnDefinitions>
            <TextBlock HorizontalAlignment="Left" Margin="115,46,0,0" Grid.Row="1" TextWrapping="Wrap" Text="Nombre" VerticalAlignment="Top" FontSize="40"/>
            <TextBlock HorizontalAlignment="Center" Margin="0,150,0,0" Grid.Row="1" TextWrapping="Wrap" Text="Bienvenido" VerticalAlignment="Top" FontSize="30"/>
            <Button x:Name="IrCont" Content="Generar" HorizontalAlignment="Center" Margin="86,193,86,0" VerticalAlignment="Top" Width="228" Click="Button_Click"/>
            <Button x:Name="IrAdmin" Content="Administrar" HorizontalAlignment="Center" Margin="0,240,0,0"  VerticalAlignment="Top"/>
    </Grid>


    • Editado DouglasR01 miércoles, 18 de noviembre de 2015 19:05 Error
    miércoles, 18 de noviembre de 2015 19:03
  • Douglas, en tu caso:

    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
        
        <TextBlock HorizontalAlignment="Stretch" Margin="10" Grid.Column="0" TextWrapping="Wrap" Text="Nombre" VerticalAlignment="Top" FontSize="40"/>
    
            <TextBlock HorizontalAlignment="Stretch" Margin="10" Grid.Column="1" TextWrapping="Wrap" Text="Bienvenido" VerticalAlignment="Top" FontSize="30"/>
    
            <Button x:Name="IrCont" Content="Generar" HorizontalAlignment="Stretch" Margin="10" Grid.Column="0" Grid.Row="0" VerticalAlignment="Top" Width="228" Click="Button_Click"/>
    
            <Button x:Name="IrAdmin" Content="Administrar" HorizontalAlignment="Stretch" Margin="10" Grid.Column="1" Grid.Row="1"  VerticalAlignment="Top"/>
    </Grid>

    Con este código lograrás que los objetos se ajusten a la pantalla.

    Saludos.


    Christian Amado
    Software Engineer | MCPD: Windows Phone Developer | MCTS: Silverlight Developer
    Don't forget to mark the right answer and vote up if helps you.
    MCP Profile
    My code samples

    • Marcado como respuesta DouglasR01 miércoles, 18 de noviembre de 2015 20:17
    miércoles, 18 de noviembre de 2015 20:13
  • ¡Muchas gracias!
    miércoles, 18 de noviembre de 2015 20:17