使用Silverlight2dataGrid例子(完整XAML)

本文介绍了一个使用WPF实现的数据网格视图设计案例,该视图包括了图片展示、标题显示、来源信息及详细内容等部分,并且具备视频播放功能。通过自定义模板的方式实现了灵活的布局和丰富的交互。
  1.  <data:DataGrid x:Name="results" RowHeight="60" IsReadOnly="True" Width="800" Margin="14"
  2.       RowBackground="#99FFFFFF" AlternatingRowBackground="#66FFFFFF"
  3.       HeadersVisibility="None" GridlinesVisibility="Horizontal"             
  4.       RowDetailsVisibility="VisibleWhenSelected" SelectionMode="SingleFullRow">
  5.       <data:DataGrid.Columns>
  6.         <data:DataGridTemplateColumn Width="80">
  7.           <data:DataGridTemplateColumn.CellTemplate>
  8.             <DataTemplate>
  9.               <Border CornerRadius="5" BorderThickness="1" Margin="5" BorderBrush="DarkGray" Background="Black">
  10.                 <Image Source="{Binding ImageUrl}" Stretch="UniformToFill" Margin="1"/>
  11.               </Border>
  12.             </DataTemplate>
  13.           </data:DataGridTemplateColumn.CellTemplate>
  14.         </data:DataGridTemplateColumn>
  15.           
  16.         <data:DataGridTextBoxColumn DisplayMemberBinding="{Binding Title}" FontSize="20" FontWeight="Bold" Width="527"/>
  17.           
  18.         <data:DataGridTemplateColumn Width="165">
  19.           <data:DataGridTemplateColumn.CellTemplate>
  20.             <DataTemplate>
  21.               <StackPanel VerticalAlignment="Center">
  22.                 <TextBlock Text="Source" Foreground="#666666" FontWeight="Bold" FontFamily="Trebuchet MS" FontSize="14"/>
  23.                 <TextBlock Text="{Binding Source}" FontFamily="Trebuchet MS" FontSize="14"/>
  24.               </StackPanel>
  25.             </DataTemplate>
  26.           </data:DataGridTemplateColumn.CellTemplate>
  27.         </data:DataGridTemplateColumn> 
  28.       </data:DataGrid.Columns>
  29.       
  30.       <data:DataGrid.RowDetailsTemplate>
  31.         <DataTemplate>
  32.           <!-- MouseLeave -->
  33.           <Grid Margin="5,5,5,0" Background="Transparent">
  34.             <Grid.ColumnDefinitions>
  35.               <ColumnDefinition />
  36.               <ColumnDefinition Width="Auto"/>
  37.             </Grid.ColumnDefinitions>
  38.               
  39.             <Grid.RowDefinitions>
  40.               <RowDefinition Height="Auto"/>                            
  41.               <RowDefinition Height="10" />
  42.             </Grid.RowDefinitions>
  43.               
  44.             <StackPanel>
  45.               <TextBlock Text="{Binding Description}" TextWrapping="Wrap" Margin="5" FontFamily="Trebuchet MS" FontSize="16"/>
  46.               <TextBlock Text="Posted On:" Foreground="#666666" Margin="5,5,5,0" FontFamily="Trebuchet MS" FontSize="14" FontWeight="Bold"/>
  47.               <TextBlock Text="{Binding PublishDate}" Margin="5,0,5,5" FontFamily="Trebuchet MS" FontSize="14"/>
  48.               <TextBlock Text="View Count:" Foreground="#666666" Margin="5,5,5,0" FontFamily="Trebuchet MS" FontSize="14" FontWeight="Bold"/>
  49.               <TextBlock Text="{Binding ViewCount}" Margin="5,0,5,5" FontFamily="Trebuchet MS" FontSize="14"/>
  50.             </StackPanel>
  51.             <Border Grid.Column="1" Height="330" Width="440" CornerRadius="5" BorderThickness="1" Margin="5" BorderBrush="DarkGray" Background="Black" VerticalAlignment="Top">
  52.               <Grid>
  53.                 <MediaElement Margin="2" Source="{Binding VideoUrl}" AutoPlay="True"/>
  54.                 <Button Content="Play" Width="50" Height="50" Margin="0,0,0,35" Opacity="0"/>
  55.               </Grid>
  56.             </Border>
  57.           </Grid>
  58.         </DataTemplate>
  59.       </data:DataGrid.RowDetailsTemplate>
  60.     </data:DataGrid>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值