WPF将数据库和GridView绑定并更改GridView模板
首先来看一下如何使用GridView,在前台的话代码如下:这里仅仅举出一个例子,GridView是作为子项嵌套在ListView中的,这里的数据源是通过绑定的方式来绑定到GridView中的。
<ListView Margin="15,115,15,48" Name="lstProducts" ItemsSource="{Binding}"><ListView.View><GridView><GridViewColumn Header="ProductID"DisplayMemberBinding="{Binding Path=ProductID}"></GridViewColumn><GridViewColumn Header="Product Name"DisplayMemberBinding="{Binding Path=ProductName}"></GridViewColumn><GridViewColumn Header="SupplierID"DisplayMemberBinding="{Binding Path=SupplierID}"></GridViewColumn><GridViewColumn Header="CategoryID"DisplayMemberBinding="{Binding Path=CategoryID}"></GridViewColumn><GridViewColumn Header="Qty. Per Unit"DisplayMemberBinding="{Binding Path=QuantityPerUnit}"></GridViewColumn><GridViewColumn Header="Unit Price"DisplayMemberBinding="{Binding Path=UnitPrice}"></GridViewColumn><GridViewColumn Header="In Stock"DisplayMemberBinding="{Binding Path=UnitInStock}"></GridViewColumn></GridView></ListView.View>
</ListView>
这里有一些关键字,Header和DisplayMemberBinding,在前台中我们可以通过修改模板的方式来修改GridView的样式,首先我们可以修改GridView的列头的样式,我们可以改变背景,字体大小,高度等一系列参数。
<GridView.ColumnHeaderTemplate><DataTemplate><TextBlock FontFamily="Microsoft YaHei" FontSize="35" Foreground="White" Background="#333" Width="265" HorizontalAlignment="Center" TextAlignment="Center"><TextBlock.Text><Binding/></TextBlock.Text></TextBlock></DataTemplate>
</GridView.ColumnHeaderTemplate>
另外还有一个重要的模板,就是CellTemplate,我们需要注意GridViewColumn用了DisplayMemberBinding 使得CellTemplate失效,所以如果需要自定义CellTemplate,那么一定要去掉 DisplayMemberBinding。 下面是一个具体的例子。首先在资源中定义模板,
<DataTemplate x:Key="GridViewCellTemplate"><TextBlock FontFamily="Microsoft YaHei" Height="60" FontSize="35" Foreground="White" Background="Gray" Width="265" HorizontalAlignment="Center" TextAlignment="Center"><TextBlock.Text><Binding Path="DisplayName" Mode="TwoWay"/></TextBlock.Text></TextBlock>
</DataTemplate>
然后在具体的列中引用,<GridViewColumn Header="投诉人" Width="Auto" CellTemplate="{StaticResource GridViewCellTemplate}" ></GridViewColumn>这样就可以实现对每一列的模板替换。
还有很重要的一部分就是在后台来讲数据库绑定到前台中,在xaml中我们使用了ItemsSource="{Binding}",那么在后台的代码中:
/// <summary>
/// 从数据库中获取数据并绑定到GridView上
/// </summary>
private void GetDataFromDataBase()
{
string connectStr = "Server=127.0.0.1;Database=test;Uid=root;Pwd=12345;Port=3306;CharSet=gbk;allow zero datetime=true";
string cmdStr = "select * from camerainfo order by pID desc limit 100";
DataBaseMySqlHander sql = new DataBaseMySqlHander(connectStr);
DataTable dt = sql.GetDataTable(cmdStr);
if (dt == null) return;
//创建一个DataTable的副本
DataTable tempTable = new DataTable();
tempTable = dt.Clone();//克隆 System.Data.DataTable 的结构
//包括所有 System.Data.DataTable 架构和约束。
if (tempTable != null && dt.Rows.Count>0)
{for (int i = 0; i < dt.Rows.Count; i++){tempTable.ImportRow(dt.Rows[i]); }
}
//为ListView绑定数据源
this.dv= tempTable.DefaultView;
tempTable.Dispose();
}
以上部分就实现了简单的数据库的绑定,这部分也是非常重要的部分,我们在使用的时候可以按照上述步骤来进行绑定!
转载于:https://www.cnblogs.com/seekdream/p/4602902.html
WPF将数据库和GridView绑定并更改GridView模板相关推荐
- 如何更改gridview中任意单元格颜色或者内容。
比如我想把所有状态这一列名字为等待打印的字为红色.或者这个格子为红色.. 首先任意下一个方法:这个只是表面的更改. public string GetColor(object value) {if ( ...
- Dev GridView 绑定Listlt;Tgt;、BindingList lt;Tgt;、BindingSource
作者:jiankunking 出处:http://blog.csdn.net/jiankunking 今天听到同事处理数据结构的时候特意处理为了 BindingList<T>,据说可以直接 ...
- html gridview绑定数据,winform,devexpress GridControl中GridView数据绑定
当我们新建一下GridControl的时候,就会有一个默认的GridView,这时我们如何绑定数据到GridView上呢? 只需要一行代码就可绑定了,代码如下:gridControl1.DataSou ...
- ASP.NET的属性绑定、表达式绑定、集合绑定、方法绑定、DropDownList集合绑定、DataList绑定、GridView绑定
属性绑定 .aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Defau ...
- WPF中一个控件绑定另一个控件的属性
原文:WPF中一个控件绑定另一个控件的属性 如同一个Grid中的一个按钮根据另一个按钮的显示与否作出不同的响应: 绑定的时候通过ElementName来指定控件 <Grid Margin=&qu ...
- GridView绑定DataSet的DataTable,怎么让它在无记录时能显示表头呀(环境VS2005),在线等 谢谢!!
主 题: GridView绑定DataSet的DataTable,怎么让它在无记录时能显示表头呀(环境VS2005),在线等 谢谢!! 作 者: bolowang (波罗王子) ...
- 在WPF中如何使用RelativeSource绑定
在WPF中如何使用RelativeSource绑定 原文: 在WPF中如何使用RelativeSource绑定 在WPF绑定的时候,指定绑定源时,有一种办法是使用RelativeSource. 这种办 ...
- Gridview导出到Excel,Gridview中的各类控件,Gridview中删除记录的处理
Asp.net 2.0中新增的gridview控件,是十分强大的数据展示控件,在前面的系列文章里,分别展示了其中很多的基本用法和技巧(详见< ASP.NET 2.0中Gridview控件高级技巧 ...
- 4.mysql数据库创建,表中创建模具模板脚本,mysql_SQL99标准连接查询(恩,外部连接,全外连接,交叉连接)...
mysql数据库创建,表创建模等模板脚本 -- 用root用户登录系统,运行脚本 -- 创建数据库 create database mydb61 character set utf8 ; -- ...
最新文章
- 详细通俗重点CRF层讲解
- 面向对象数据库和关系数据库的区别
- 多线程中的队列不一定需要线程安全
- 【☢️伤害性不高,侮辱性极强!☢️】Win10更新21H1后关闭右下角天气和新闻
- 从零开始发布自己的NPM包
- java写出http数据包_java用jpcap怎么识别出http和https的数据包?
- 从零开始造一个“智障”聊天机器人
- 提取图像色彩主色调工具
- oracle vm 4.3.12,Oracle VM VirtualBox 4.3.12_ZZZZ这个程序肿么卸载啊,卸载不了
- 如何使用SqlLoader导入数据
- win7打开win10共享计算机要凭据,win10打开共享文件夹后要求凭证怎么办
- macbook边缘磕碰如何修复
- ShareX加七牛云免费搭建快速博客图床
- B端产品-定义、分类、竞品分析、与C端产品的区别
- 运行项目页面显示“该网页无法正常运作”的解决办法 - 前端篇
- 利用计算机设计产品,计算机在产品设计的应用论文
- 赵俊峰内蒙古大学计算机学院,内蒙古大学计算机学院研究生导师:赵俊峰
- mysql 5.7修改密码
- TDM-GCC MINGW配置与优化算法测试函数使用
- 学习C++的参考书目