Silverlight中DataGrid的用法

Silverlight中DataGrid的用法,第1张

概述1、 数据绑定:grdLbs.ItemsSource=数据集合对象 2、 普通绑定列 <data:DataGrid.Columns>      <data:DataGridTextColumnHeader="名称"Binding="{Binding Mc}" />  </data:DataGrid.Columns> 3、 模板列:  不知道为啥套这么多层,为了保暖? >_<            

1、 数据绑定:GrdLbs.ItemsSource=数据集合对象

2、 普通绑定列

<data:DataGrID.Columns>

     <data:DataGrIDTextColumnheader="名称"Binding="{Binding Mc}" /> 

</data:DataGrID.Columns>

3、 模板列:  不知道为啥套这么多层,为了保暖? >_<

              <data:DataGrIDTemplateColumn header="图片" CanUserResize="False">
                   <data:DataGrIDTemplateColumn.CellTemplate>
                       <DataTemplate>
                           <StackPanel OrIEntation="Horizontal"VerticalAlignment="Center">
                                   <Image x:name="imglogo" Source="../{BindingPicturePath}" ></Image>
                           </StackPanel>
                       </DataTemplate>
                   </data:DataGrIDTemplateColumn.CellTemplate>
               </data:DataGrIDTemplateColumn>

在LoadingRow事件中,获取其中的图片控件:

          Image img =GrdLbs.Columns[3].GetCellContent(e.Row).Findname("imglogo") as Image;(图片所在的模板列在第4列时,列序号时3)

如果是获取选中行的图片控件:

         Image img = GrdLbs.Columns[3].GetCellContent(GrdLbs.SelectedItem).Findname("imglogo")as Image;

4、 LoadingRow事件

生成行时触发。和普通的GRID不同,Silverlight里的行只在显示时才生成,没显示出来的(需要滚动条显示的),不会生成,滚动隐藏再次显示时,会重新生成。这种特性可能会造成显示的效果和预计的不一样,要略加注意。

同时,如果新生成的行不是DataGrID最后一行的话,则新行的GetIndex会与其下方相邻行的GetIndex返回值相同。WPF会在LoadingRow事件之后再去调整新行下方各行的Index。

5、 DataGrIDRow,即行对象

不像普通的GRID,Silverlight里没有很直观的行集合(因为显示不到的行可能没有生成,或者被销毁了)。在LoadingRow事件里,通过其参数,是唯一获取该DataGrIDRow对象的途径。

6、 遍历单元格

Silverlight遍历单元格的方式,先取得列对象,然后通过其GetCellContent()方法取某行的单元格。该方法的参数是DataGrIDRow,或者绑定数据源中的某条数据, 返回值是代表单元格的FrameworkElement对象。 该对象的Findname()方法,用于取得模板列中的控件。

7、 SelectionChanged也是较常用的事件。

GrdLbs.SelectedItem是选中行相关的实体数据源对象。       Bas_CpLb lb = (Bas_CpLb)GrdLbs.SelectedItem;

8、 模板列中的按钮

和外面的按钮一样,可以使用Click事件,而相关的参数,可以通过Tag属性传递使用。

<button x:name="btnUp" Content="置顶"Click="btnUp_Click" Tag="{Binding ID}"></button>

总结

以上是内存溢出为你收集整理的Silverlight中DataGrid的用法全部内容,希望文章能够帮你解决Silverlight中DataGrid的用法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1064264.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存