Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Danilo Pessoa

Formatar saida de dados XAML

Recommended Posts

Boa tarde a todos,

 

 

 

 

Galera preciso de uma ajuda de vocês, não manjo muito de C# então estou apanhando um pouco.

 

Eu tenho uma telinha que lista arquivos para downloads, só que ele vem em lista e preciso que sai de outra forma.

 

Preciso que seja em 2 colunas, em cada coluna um descritivo junto com uma imagem páginando quando ultrapassar 8 itens ná pagina.

 

Segue código atual:

 


<Grid x:Name="LayoutRoot" Margin="2" KeyDown="ctrlSlide_KeyDown">
       <!--<Grid.RowDefinitions>
           <RowDefinition />
           <RowDefinition Height="Auto" />
       </Grid.RowDefinitions>-->
       <Image Source="../Images/Slide1.JPG" Visibility="Collapsed" />
       <ScrollViewer Margin="0,25,0,0" BorderBrush="Transparent" VerticalScrollBarVisibility="Auto" BorderThickness="0">
           <ItemsControl x:Name="lstArquivos">
               <ItemsControl.ItemTemplate>
                   <DataTemplate>
                       <Grid>
                           <Grid.ColumnDefinitions>
                               <ColumnDefinition Width="1170"></ColumnDefinition>
                               <ColumnDefinition Width="*"></ColumnDefinition>
                           </Grid.ColumnDefinitions>
                           <Grid.RowDefinitions>
                               <RowDefinition Height="85" />
                           </Grid.RowDefinitions>
                           <TextBlock Margin="40,-45,0,0" Style="{StaticResource TextBlockLabel}" FontSize="26" HorizontalAlignment="Left" VerticalAlignment="Center" Width="1100" Text="{Binding titulo}" Grid.Column="0" />
                           <Image Source="../icons/adobeReader.png" Width="30" Height="30" Grid.Column="0" Grid.RowSpan="3" VerticalAlignment="Top" Cursor="Hand" MouseLeftButtonDown="Image_MouseLeftButtonDown" />
                       </Grid>
                   </DataTemplate>
               </ItemsControl.ItemTemplate>
           </ItemsControl>
     </ScrollViewer>

       <ctrl:Slides x:Name="ctrlSlide" Width="590" Height="470" VerticalAlignment="Center" HorizontalAlignment="Center" KeyDown="ctrlSlide_KeyDown"/>

       <Image x:Name="btnAnterior" Source="../icons/toleft.png" Width="30" Height="48" VerticalAlignment="Center" HorizontalAlignment="Left" Cursor="Hand" MouseLeftButtonDown="btnAnterior_MouseLeftButtonDown" Style="{StaticResource SetaNavegacao}" KeyDown="ctrlSlide_KeyDown" Visibility="Collapsed"/>
       <Image x:Name="btnProximo" Source="../icons/toright.png" Width="30" Height="48" VerticalAlignment="Center" HorizontalAlignment="Right" Cursor="Hand" MouseLeftButtonDown="btnProximo_MouseLeftButtonDown" Style="{StaticResource SetaNavegacao}" KeyDown="ctrlSlide_KeyDown" Visibility="Collapsed"/>

   </Grid>

 

Alguém pode me ajudar?

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso não tem nada a ver com C#, seu problema é sobre WPF ou Silverlight.

 

De uma olhada para entender como posicionar seus objetos no XAML.

http://www.silverlightshow.net/items/Using-the-Grid-control-in-Silverlight-2-Beta-1.aspx

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

O link que você quintelab me passou ajudou muito a entender sobre o XAML.

 

Mas agora o problema é no C# mesmo, tenho uma function que traz dados do Banco, mas quando faz o display na tela repete o mesmo dado nas duas colunas, como faco para que cada coluna seja um arquivo diferente limitado a 6 por página?

 

Segue a function:

 

void CarregarConteudo()
       {
           JUnidade ctx = new JUnidade();
           arquivos = ctx.jos_uc_arquivos;
           ctx.Load(ctx.GetFilesQuery(unidadeID)).Completed += (s, e) =>
           {
               if (arquivos.Count() > 0 )
               {
                   lstArquivos.ItemsSource = arquivos;
                   btnProximo.Visibility = Visibility.Visible;
               }
           };
       }

Agora o trecho que tem o xaml printando na tela:

<ItemsControl x:Name="lstArquivos">
               <ItemsControl.ItemTemplate>
                   <DataTemplate>
                       <Grid>
                           <Grid.ColumnDefinitions>
                               <ColumnDefinition Width="320"></ColumnDefinition>
                               <ColumnDefinition Width="320"></ColumnDefinition>

                           </Grid.ColumnDefinitions>
                           <Grid.RowDefinitions>
                               <RowDefinition Height="85"/>
                               </Grid.RowDefinitions>

                           <TextBlock FontSize="16" Height="40" HorizontalAlignment="Left" Margin="10,0,10,0" Name="textDescricao" VerticalAlignment="Top" Text="{Binding descricao}" Visibility="Visible" TextWrapping="Wrap" Width="203" Grid.Column="0" />
                           <TextBlock FontSize="16" Height="40" HorizontalAlignment="Left" Margin="10,0,10,0" Name="textDescricao2" VerticalAlignment="Top" Text="{Binding descricao}" Visibility="Visible" TextWrapping="Wrap" Width="203" Grid.Column="1" />

                           <Image Source="../icons/adobeReader.png" Height="50" Width="45" HorizontalAlignment="Left" Margin="220,0,12,0" Name="image1" Stretch="Fill" VerticalAlignment="Top" Grid.Column="0" Visibility="Visible" MouseLeftButtonDown="Image_MouseLeftButtonDown" Cursor="Hand" />
                           <Image Source="../icons/adobeReader.png" Height="50" Width="45" HorizontalAlignment="Left" Margin="220,0,12,0" Name="image2" Stretch="Fill" VerticalAlignment="Top" Grid.Column="1" Visibility="Visible" MouseLeftButtonDown="Image_MouseLeftButtonDown" Cursor="Hand" />
</Grid>
                   </DataTemplate>
               </ItemsControl.ItemTemplate>
           </ItemsControl>

 

Obrigado a quem puder me ajudar.

 

 

Resolvido? Se sim poste a solução.

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando for assunto diferente abra outro tópico é mais fácil para organizar.

 

Você terá que procurar algum controle que faça isso, desta forma manual não irá conseguir separar em colunas. Esta dando bind no mesmo campo.

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.