none
DataTemplate "pautado" RRS feed

  • Pregunta

  • Hola a Todos:

    Quería obtener un ListBox o ListView en el que los elementos se vieran entre líneas horizontales.

    Mi código es el siguiente:

            <DataTemplate DataType="{x:Type local:Person}">
                <StackPanel Orientation="Horizontal" >
                  <Border Margin="0" >
                    <TextBlock>
                       <TextBlock Text="{Binding Path=Name}"  Width="100" />
                       <TextBlock Text="{Binding Path=Age}" Width="100"
                       Foreground="{Binding Path=Age, Converter={StaticResource ageConverter}}" />
                       <Button Click="showButton_Click">Show</Button>
                    </TextBlock>
                   </Border>
                </StackPanel>
            </DataTemplate>
    

    He probado de varias formas, pero no lo consiguo.

    Muchas gracias por adelantado

    José Luis Torre


    Atentamente José Luis Torre
    jueves, 29 de diciembre de 2011 11:24

Todas las respuestas

  • Hola Jose Luis.

    te refieres algo como esto?

        <Window.Resources>
    		
            <DataTemplate x:Key="DataTemplate1">
                <StackPanel Orientation="Horizontal" >
                    <Border Margin="0" >
                    	<Grid Height="24.97" Width="241.44">
                    		<Grid.ColumnDefinitions>
                    			<ColumnDefinition/>
                    			<ColumnDefinition/>
                    			<ColumnDefinition/>
                    		</Grid.ColumnDefinitions>
    						
    						<Rectangle Stroke="Blue" Fill="Transparent" /> 						
    	                    <TextBlock Text="{Binding Path=Name}"  Width="100" />
    						
    						<Rectangle Grid.Column="1" Stroke="Blue" Fill="Transparent" /> 
    	                    <TextBlock Text="{Binding Path=Age}" Width="100" Grid.Column="1"/>
    						
    						<Rectangle Grid.Column="2" Stroke="Blue" Fill="Transparent" /> 
    	                    <Button Click="showButton_Click" Grid.Column="2">Show</Button>
    				   </Grid>
                    </Border>
                </StackPanel>
            </DataTemplate>
    
            
        </Window.Resources>
    
        <Grid Name="mainGrid">
            <ListBox Margin="8,8,190,32" ItemTemplate="{DynamicResource DataTemplate1}">
            	<my:Person Age="18" Name="David"/>
                <my:Person Age="20" Name="Ruben"/>
                <my:Person Age="25" Name="Raul"/>
                <my:Person Age="30" Name="Ivan"/>
            </ListBox>
    
        </Grid>
    

    basicamente he creado un rectangulo en cada celda del grid, lo puedes cambiar por cualquier otro tipo de forma como una linea.

    Si quieres puntos puedes usar la propiedad showlines del grid.

     

     

     

     


    Saludos
    David González
    MCP, MCTS
    Visita mi Blog en: http://www.dgzornoza.com/
    lunes, 2 de enero de 2012 20:29