Silverlight DataGrid 模板列 *** 作

Silverlight DataGrid 模板列 *** 作,第1张

概述Silverlight DataGrid 模板 *** 作 (2011-02-16 12:19:40) 转载▼ 标签: silverlight 模板 全选 数据绑定 控件 datagrid头 datagrid模板列 杂谈 分类: SilverLight4.0 DataGrid 模板列 *** 作   DataGrid在Silverlight中是一个重要的数据控件,功能十分的强大,可以分组显示,可以排序,自定义模 Silverlight DataGrID 模板列 *** 作 (2011-02-16 12:19:40)

转载
标签: silverlight 模板 全选 数据绑定 控件 datagrid头 datagrid模板列 杂谈 分类: SilverLight4.0

DataGrID 模板列 *** 作

 

DataGrID在Silverlight中是一个重要的数据控件,功能十分的强大,可以分组显示,可以排序,自定义模板,用的时候也十分的方便。

 

对于怎样拖进DataGrID这个应该都知道了【说明,如果你的页面中没有使用过DataGrID,那么你如果直接用手写代码运行会出现错误,原因就在于你没有注册,解决方案十分简单,你只需要在工具栏中拖拽一个DataGrID放进页面在删除即可,对于像Tab等一些插件如果遇见错误采用同样方法,其实还是拖拽的简单,系统会自动添加,省着麻烦】

 

接下来我们就要对DataGrID进行 *** 作了,对于添加的列有三种:

DataGrIDTemplateColumn   (模板列)

DataGrIDTextColumn       (文本列)

DataGrIDCheckBoxColumn  (选择列)

 

对于文本列和选择列我们只需要对其进行数据绑定即可,注意一下选择列的数据类型为bool

接下来我们就要学习模板列了。

1 .自定义模板头,我们知道silverlight自带的模板的头式不能够放入checkBoxtextBox等控件的,那么我们如果遇到这样的情况该怎么办呢,例如我们做一个快捷 *** 作的全选,那么我们必须在头上有一个全选的checkBox

看我的实现:

                           <sdk:DataGrIDTemplateColumn.headerStyle>

                                <Style targettype="Primitives:DataGrIDColumnheader">

                                    <Setter Property="ContentTemplate">

                                        <Setter.Value>

                                            <DataTemplate>

                                                <StackPanel>

                                                 <CheckBox Content="全选" name="chkAll"/>

                                                </StackPanel>

                                            </DataTemplate>

                                        </Setter.Value>

                                    </Setter>

                                </Style>

                            </sdk:DataGrIDTemplateColumn.headerStyle>

说明:

     上面的代码就实现了编辑表头的作用,从上面来,我们首先要控制的是头的样式headerStyle

接下来我们控制的样式目标类型,我们注意这个地方,我们必须引入以下的命名空间。

xmlns:System="clr-namespace:System;assembly=mscorlib"  xmlns:dataprimitives="clr-namespace:System.windows.Controls.Primitives;assembly=System.windows.Controls.Data"

xmlns:System_windows_Controls_Primitives="clr-namespace:System.windows.Controls.Primitives;assembly=System.windows.Controls"

xmlns:Primitives="clr-namespace:System.windows.Controls.Primitives;assembly=System.windows.Controls.Data"

在往下我们设置模板的属性,接下来就是设置的是值,在下来就是目标模板。

在下面的<StackPanel>则是我们使用的容器,因为在DataTemplate中只能够放一个控件,我们放入一个容器,这样就可以做出更丰富的模板。在里面就是我们要的checkBox了。

 

实现列的内容就更容易了,见下面代码:

<sdk:DataGrIDTemplateColumn.CellEditingTemplate>

                                <DataTemplate>

                                    <CheckBox name="chkOne"/>

                                </DataTemplate>

                            </sdk:DataGrIDTemplateColumn.CellEditingTemplate>

这个就不多说了,比那个弄头的简单的多了,并且不用引入上面那堆东西。

总结

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

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存